名称
pthread_cond_wait -- 等待一个条件变量
提要
#include <pthread.h>
int
pthread_cond_wait(pthread_cond_t *cond, pthread_mutex_t *mutex);
描述
函数pthread_cond_wait()原子性地阻塞当前线程以等待由cond指定的条件变量,并释放由mutex指定的互斥量。只有在其他线程用相同的条件变量来调用pthread_cond_signal(3)或pthread_cond_broadcast(3)之后,等待线程才能解除阻塞,并且当前线程重新获得对互斥量的锁定。
返回值
若执行成功,pthread_cond_wait()函数将返回零。否则将返回一个代表错误的错误码。
ERRORS
错误
pthread_cond_wait() 函数在以下情况下会失败:
[EINVAL] 由cond或mutex指定的值是无效的。
另请参阅
pthread_cond_broadcast(3), pthread_cond_destroy(3), pthread_cond_init(3),
pthread_cond_signal(3), pthread_cond_timedwait(3)