f_pthread_mutexattr_gettype(mattr, type)

目的

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

この関数が正常に終了すると、値 0 を戻し、引き数を介して型属性を戻します。

クラス

関数

引き数の型と属性

mattr
TYPE(f_pthread_mutexattr_t)、INTENT(IN)

type
INTEGER(4)、INTENT(OUT)

関数からの戻りでは、type に以下のいずれかの値が入ります。

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 をロックしたのと同じ数の複数のアンロックが必要です。

結果の値と属性

INTEGER(4)

結果の値

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

EINVAL
引き数が無効です。
IBM Copyright 2003