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

名称

pthread_mutexattr_init, pthread_mutexattr_destroy, pthread_mutexattr_setprioceiling, pthread_mutexattr_getprioceiling, pthread_mutexattr_setprotocol, pthread_mutexattr_getprotocol, pthread_mutexattr_settype, pthread_mutexattr_gettypeミューテックス (mutex) 属性操作

ライブラリ

POSIX Threads Library (libpthread, -lpthread)

書式

#include < pthread.h>

int
pthread_mutexattr_init( pthread_mutexattr_t *attr);

int
pthread_mutexattr_destroy( pthread_mutexattr_t *attr);

int
pthread_mutexattr_setprioceiling( pthread_mutexattr_t *attr, int prioceiling);

int
pthread_mutexattr_getprioceiling( pthread_mutexattr_t *attr, int *prioceiling);

int
pthread_mutexattr_setprotocol( pthread_mutexattr_t *attr, int protocol);

int
pthread_mutexattr_getprotocol( pthread_mutexattr_t *attr, int *protocol);

int
pthread_mutexattr_settype( pthread_mutexattr_t *attr, int type);

int
pthread_mutexattr_gettype( pthread_mutexattr_t *attr, int *type);

解説

ミューテックス (mutex) 属性は、 pthread_mutex_init() へのパラメータを指定するために使用されます。 1 つの属性オブジェクトは、呼び出しの間の修正と共に、または修正なしで pthread_mutex_init() への多数の呼び出しで使用できます。

pthread_mutexattr_init() 関数は、すべてのデフォルトミューテックス属性で attr を初期化します。

pthread_mutexattr_destroy() 関数は、 attr を破壊します。

pthread_mutexattr_set*() 関数は、各関数名に相当する属性を設定します。

pthread_mutexattr_get*() 関数は、2 番目の関数パラメータによって指される位置へ各関数名に相当する属性の値をコピーします。

戻り値

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

エラー

pthread_mutexattr_init() 関数は、次の場合に失敗します:
[ ENOMEM]
メモリ不足。

pthread_mutexattr_destroy() 関数は、次の場合に失敗します:

[ EINVAL]
attr が、無効の値。

pthread_mutexattr_setprioceiling() 関数は、次の場合に失敗します:

[ EINVAL]
attr が、無効の値、または prioceiling が、無効の値。

pthread_mutexattr_getprioceiling() 関数は、次の場合に失敗します:

[ EINVAL]
attr が、無効の値。

pthread_mutexattr_setprotocol() 関数は、次の場合に失敗します:

[ EINVAL]
attr が、無効の値、または protocol が、無効の値。

pthread_mutexattr_getprotocol() 関数は、次の場合に失敗します:

[ EINVAL]
attr が、無効の値。

pthread_mutexattr_settype() 関数は、次の場合に失敗します:

[ EINVAL]
attr が、無効の値、または type が、無効の値。

pthread_mutexattr_gettype() 関数は、次の場合に失敗します:

[ EINVAL]
attr が、無効の値。

関連項目

pthread_mutex_init(3)

規格

pthread_mutexattr_init() と pthread_mutexattr_destroy() 関数は、 ISO/IEC 9945-1:1996 (“POSIX.1”) に適合しています。

pthread_mutexattr_setprioceiling(), pthread_mutexattr_getprioceiling(), pthread_mutexattr_setprotocol(), pthread_mutexattr_getprotocol(), pthread_mutexattr_settype() と pthread_mutexattr_gettype() 関数は、 Version 2 of the Single UNIX Specification (“SUSv2”) に適合しています。

May 1, 2000 FreeBSD