Silphire (7255) の日記

2003 年 02 月 25 日
午後 11:44

pthread日記(45) - pthread_mutexattr_setpshared()

Mutex属性オブジェクトのprocess-shared属性の設定をします。

int pthread_mutexattr_setpshared(pthread_mutexattr_t *attr, int pshared);

pthread_mutexattr_setpshared()は、attrが参照するMutex属性オブジェクトのprocess-shared属性の値を設定します。

process-shared属性にPTHREAD_PROCESS_SHAREDをセットすると、Mutexが確保されているメモリにアクセス出来るどのスレッドでも、Mutexを操作出来るように許可します。そのMutexがあるメモリが複数のプロセスに共有されていても許可します。

process-shared属性にPTHREAD_PROCESS_PRIVATEをセットすると、そのMutex属性オブジェクトを用いて初期化したMutexは、スレッドを作成したプロセスと同じプロセス内のスレッドにしか操作出来なくなります。他のプロセスのスレッドがそのようなMutexを操作しようとした時の挙動は未定義です。

process-shared属性のデフォルトの値はPTHREAD_PROCESS_PRIVATEです。

pthread_mutexattr_setpshared()が成功した時には0を返します。エラーの時はエラーに応じた値を返します。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

弘法筆を選ばず、アレゲはキーボードを選ぶ -- アレゲ研究家

処理中...