マルチスレッドのプログラミング

クロック選択条件変数の設定

attr が参照する初期化された属性オブジェクト内のクロック属性を設定するには、pthread_condattr_setclock(3C) 関数を使用します。pthread_condattr_setclock() が、CPU 時間クロックを表す clock_id 引数を指定して呼び出された場合、その呼び出しは失敗します。クロック属性は、pthread_cond_timedwait() のタイムアウトサービスを測定するために使用されるクロックのクロック ID です。クロック属性のデフォルト値は、システムクロック CLOCK_REALTIME を表します。この時点で、クロック属性に対して取り得るほかの値は CLOCK_MONOTONIC だけです。

pthread_condattr_setclock の構文

int pthread_condattr_setclock(pthread_condattr_t attr, 
          clockid_t clock_id);
#include <pthread.h>

pthread_condattr_t attr
clockid_t clock_id
int ret


ret = pthread_condattr_setclock(&attr &clock_id

pthread_condattr_setclock の戻り値

pthread_condattr_setclock() は、正常終了時に 0 を返します。それ以外の戻り値は、エラーが発生したことを示します。以下の条件が検出されると、この関数は失敗し、次の値を返します。


EINVAL

説明:

clock_id で指定された値が既知のクロックを表していないか、または CPU 時間クロックです。