Silphireの日記: pthread日記(52) - pthread_cond_init()
日記 by
Silphire
条件変数を初期化します
int pthread_cond_init(pthread_cond_t *cond, const pthread_condattr_t *attr);
pthread_cond_init()は、condが参照する条件変数を初期化します。attrが参照する条件変数属性オブジェクトを使って、条件変数の設定を行う事が出来ます。デフォルトの属性のまま条件変数を使用する時は、attrにNULLを指定するか、デフォルトの条件変数属性オブジェクトを指定します。これらはどちらも同じ働きをします。既に初期化された条件変数を最初期化した時の結果は未定義です。
デフォルトの条件変数属性オブジェクトを用いて条件変数を使う場合は、条件変数の初期化に静的に確保されているPTHREAD_COND_INITIALIZERを使って初期化する事が出来ます。これはpthread_cond_init()をattrにNULLを指定して動的に条件変数を確保した時と等価です。但し、静的に確保した場合はエラーチェックがされません。
pthread_cond_init()が成功した時には0を返します。エラーの時はエラーに応じた値を返します。実装されていれば、EBUSY, EINVALのエラーチェックも行われます。
pthread日記(52) - pthread_cond_init() More ログイン