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

読み取りロックの獲得

rwlp が指す読み取り/書き込みロック上で読み取りロックを獲得するには、rw_rdlock(3C) を使用します。

rw_rdlock の構文

#include <synch.h> (or #include <thread.h>)

int rw_rdlock(rwlock_t *rwlp);

指定した読み取り/書き込みロックが書き込み用にすでにロックされている場合、呼び出しスレッドは書き込みロックが解放されるまでブロックされます。そうでなければ、呼び出しスレッドは読み取りロックを獲得します。POSIX スレッドの場合については、pthread_rwlock_rdlock の構文」を参照してください。

rw_rdlock の戻り値

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


EINVAL

説明:

引数が無効です。


EFAULT

説明:

rwlp が指すアドレスが正しくありません。