デバッガーでは、このようなコード行を実行すると「フリーズ」します。lock (myvar)明らかに、他の誰かがを保持していmyvarます。しかし、私はこのラインでそれmyvarが無料であるべきだと期待しています。myvarしたがって、コードのどの部分が(別のスレッドから)保持されているのかを知りたいのです。どうやってやるの?どのスレッドがそれを保持しているのかはわかりますが(他のスレッドが1つしかないため)、どこにあるのかわかりません。
updがMonitor.Exit(myvar)解決しました、私は1つの後に電話するのを忘れましたMonitor.TryEnter(myvar)