最初にデータ構造を操作するスレッドがあり、そのため pthread 書き込みロックが設定されている場合、そのスレッドがロックを読み取りロック状態に変更できるようにすることはできますか。スイッチ?
1 に答える
1
残念ながら、私の知る限り、pthreads 標準では、pthread_rwlock_t
. 一部の pthread 実装では、ロックを解除せずにライター ロックの保持からリーダー ロックの保持に移行できる拡張機能を許可する場合がありますが、これは pthread の SuS / POSIX 仕様の範囲外です。そして、最も一般的なケースである Linux/glibc pthreads の実装で、この操作が可能になるとは思えません。
したがって、あなたの質問に対する短い答えは「いいえ」です。必要な動作を得るには、pthread_mutex_t/pthread_cond_t の上に独自のリーダー/ライター ロックを実装する必要があります。
于 2012-06-10T20:55:28.803 に答える