EN JA
PTHREAD_COND_WAIT(3)
PTHREAD_COND_WAIT(3) FreeBSD Library Functions Manual PTHREAD_COND_WAIT(3)

名称

pthread_cond_wait条件変数をウェート (待つ) する

ライブラリ

POSIX Threads Library (libpthread, -lpthread)

書式

#include < pthread.h>

int
pthread_cond_wait( pthread_cond_t *cond, pthread_mutex_t *mutex);

解説

pthread_cond_wait() 関数は、 cond によって指定された条件変数でウェート (待つ) している現在のスレッドを不可分にブロックし、 mutex によって指定されたミューテックス (mutex) を解放します。ウェート (待つ) しているスレッドは、別のスレッドが同じ条件変数で pthread_cond_signal(3) または pthread_cond_broadcast(3) を呼び出した後のみブロックを解除し、現在のスレッドは、 mutex のロックを再獲得します。

戻り値

成功したなら、 pthread_cond_wait() 関数は、0 を返します。そうでなければ、エラー番号がエラーを示すために返されます。

エラー

pthread_cond_wait() 関数は、次の場合に失敗します:
[ EINVAL]
cond によって指定された値、または mutex によって指定された値が無効です。
[ EPERM]
指定された mutex が呼び出しているスレッドによってロックされませんでした。

規格

pthread_cond_wait() 関数は、 ISO/IEC 9945-1:1996 (“POSIX.1”) に適合しています。
February 16, 2006 FreeBSD