f_pthread_mutexattr_settype(mattr, type)

目的

この関数は、引き数 mattr によって識別される mutex 属性オブジェクト内 に mutex 型属性を設定するために使用できます。 引き数型は、設定する mutex 型属性を識別します。

クラス

関数

引き数の型と属性

mattr
TYPE(f_pthread_mutexattr_t)、INTENT(INOUT)

type
INTEGER(4)、INTENT(IN)

以下のいずれかの値が入る必要があります。

PTHREAD_MUTEX_NORMAL
この型の mutex は、デッドロックを検出することはありません。 この mutex を最初にアンロックせずに再びロックしようと したスレッドは、デッドロックになります。 異なるスレッドによってロックされた mutex をアンロックしようと した場合の動作は未定義です。

PTHREAD_MUTEX_ERRORCHECK
この型の mutex は、エラー・チェックを提供します。 この mutex を最初にアンロックせずに再びロックしようと したスレッドは、エラーと共に戻されます。 別のスレッドがロックした mutex をアンロックしようとした スレッドは、エラーを戻します。 アンロックをした mutex をアンロックしようとすると、エラーを戻します。

PTHREAD_MUTEX_RECURSIVE
この mutex を最初にアンロックせずに再びロックしようとしたスレッドは、mutex のロックに成功します。 型 PTHREAD_MUTEX_NORMAL の mutex によって 起きる可能性がある再ロックによるデッドロックは、この型の mutex では起きません。 別のスレッドが mutex を獲得する前にこの mutex の複数のロックが mutex を解放するには、 この mutex をロックしたのと同じ数の複数のアンロックが必要です。

PTHREAD_MUTEX_DEFAULT
PTHREAD_MUTEX_NORMAL と同じです。

結果の値と属性

INTEGER(4)

結果の値

正常終了した場合、この関数は 0 を戻します。 それ以外の場合は、以下のエラーを戻します。

EINVAL
引き数のいずれかが無効です。
IBM Copyright 2003