假设我有多个线程在调用 pthread_mutex_lock()
时阻塞。当互斥体可用时,调用 pthread_mutex_lock()
的第一个线程是否获得了锁?也就是说,是否按 FIFO 顺序调用 pthread_mutex_lock()
?如果不是,它们的顺序是什么(如果有的话)?谢谢!
最佳答案
When the mutex becomes available, does the first thread that called
pthread_mutex_lock()
get the lock?
没有。其中一个等待线程获得了锁,但不确定是哪个线程获得了它。
FIFO order?
FIFO 互斥锁已经是一种模式了。参见 Implementing a FIFO mutex in pthreads
关于c - 多线程等待的 `pthread_mutex_lock()` 唤醒顺序是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14947191/