1

私は通常、

#pragma omp critical(lock)
{ ... }

特定のコードを実行するスレッドが 1 つだけであることを確認する必要がある場合は、ディレクティブを使用します。

したがって、私が探しているのは、同様のものを使用して共有ロックと排他ロックを実装する方法です。変数を読み書きできる複数のスレッドがあります。スレッドが書き込み中の場合、他のすべてのスレッドの読み取りまたは書き込みがブロックされます。ただし、変数を読み取っても何もブロックされません。これどうやってするの?

4

1 に答える 1

0

残念ながら、OpenMP はリーダー/ライター ロックをサポートしていません。代わりに、 shared_lockを提供する Boost などの他のライブラリを使用できます。

于 2012-09-10T13:15:13.490 に答える