1

System.Threading.Timerを使用すると、ステートメントlock内のコードの一部が重複するのを防ぐことができますが、lockステートメントの外側のコードは重複しません! ?、それはどのように機能していますか。

4

1 に答える 1

3

おそらく、同じオブジェクトで複数のスレッドがロックされているためです。

ステートメントの要点は、lock一度に 1 つのスレッドだけが特定のモニターを獲得できるということです。彼らがそれをしなければ、彼らはかなり無意味になるでしょう! タイマー スレッドが異なるモニターを取得しようとした場合、それらはすべて同時に実行できます。

それでも問題が解決しない場合は、 MSDN のlock声明を読んでから、まだ混乱している場合は、より具体的な質問を投稿してください。

于 2013-10-27T18:12:30.957 に答える