0

私が理解している限り、ミューテックスはクリティカルセクションをロックするために使用され、スレッドが既に使用しているときに他のスレッドがアクセスできないようにします。そのため、mutex は、一度に複数のスレッドがデータを使用または変更しようとするのを回避します。しかし、セマフォは、N 個のスレッドがクリティカル セクションに入るのを許可し、N+1 からブロックを開始します。N 個のスレッドは、クリティカル セクション内にあるときにデータを変更しようとしないでしょうか?

4

1 に答える 1

0

答えはイエスです。クリティカル セクションの概念に違反しています。あなたの言い分がわかりません。しかし、答えはイエスです。N 個のスレッド/LWP がすべて同時に処理され、未定義の動作が発生します。

于 2013-04-27T02:44:48.520 に答える