tail head cat sleep
QR code linking to this page

manページ  — PTHREAD_RWLOCK_INIT

名称

pthread_rwlock_init – 読取り / 書込みロックの初期化

内容

ライブラリ

Reentrant C\~Library (libc_r, -lc_r)

書式

#include <pthread.h>

int
pthread_rwlock_init(pthread_rwlock_t *lock, const pthread_rwlockattr_t *attr);

解説

pthread_rwlock_init() 関数は、 attr で指定された属性で、読取り / 書込みロックを初期化するために使用されます。 attr が NULL の場合には、デフォルトの読取り / 書込みロック属性が使用されます。

既に初期化されているロックでの pthread_rwlock_init() の呼び出しの結果は、未定義です。

戻り値

問題がない場合は、 pthread_rwlock_init() 関数は 0 を返します。 問題がある場合は、そのエラーを示すためにエラー番号が返されます。

関連項目

pthread_rwlock_destroy(3), pthread_rwlockattr_init(3), pthread_rwlockattr_setpshared(3)

規格

pthread_rwlock_init() 関数は、 Version 2 of the Single UNIX Specification に適合しているはずです。

エラー

pthread_rwlock_init() 関数は、以下の場合に失敗します。
[EAGAIN]
  ロックを初期化するために必要な (メモリ以外の) リソースが、 システムに不足しています。
[ENOMEM]
  ロックを初期化するための十分なメモリがありません。
[EPERM]
  呼び出し側が、その操作を実行するための十分な権利を持っていません。

pthread_rwlock_init() 関数は、以下の場合に失敗することがあります。
[EBUSY]
  lock によって参照されているオブジェクトで、 以前に初期化されているがまだ破壊されていない読取り / 書込みロックを 再初期化しようとしていることを、システムが検出しました。
[EINVAL]
  attr によって指定された値が無効です。

歴史

pthread_rwlock_init() 関数は、 FreeBSD 3.0 ではじめて登場しました。

バグ

PTHREAD_PROCESS_SHARED 属性は、サポートされていません。

PTHREAD_RWLOCK_INIT (3) August 4, 1998

tail head cat sleep
QR code linking to this page


このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.

Unix...best if used before: Tue Jan 19 03:14:08 GMT 2038