MSDNのロックキーワードの主な機能を理解しています
ロックステートメント(C#リファレンス)
lockキーワードは、特定のオブジェクトの相互排他ロックを取得し、ステートメントを実行してからロックを解放することにより、ステートメントブロックをクリティカルセクションとしてマークします。
ロックはいつ使用する必要がありますか?
たとえば、データを保護するため、マルチスレッドアプリケーションでは意味があります。しかし、アプリケーションが他のスレッドをスピンオフしない場合は必要ですか?
ロックの使用にパフォーマンスの問題はありますか?
どこでもロックを使用しているアプリケーションを継承しましたが、それはシングルスレッドであり、それらをそのままにしておくべきかどうか知りたいのですが、それらは必要ですか?
これは一般的な知識の質問であることに注意してください。アプリケーションの速度は良好です。これが将来従うべき優れたデザインパターンであるかどうか、または絶対に必要でない限りこれを避けるべきかどうかを知りたいです。