専用スレッドロックオブジェクトの命名規則[非公開]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 4年前に閉鎖されました。 比較的マイナーな質問ですが、公式のドキュメントやブログに関する意見/議論すら見つけることができませんでした。 簡単に言えば、私が唯一の目的をprivateに提供することを目的とするprivateオブジェクトがある場合、そのオブジェクトlockに何と名前を付けますか? class MyClass { private object LockingObject = new object(); void DoSomething() { lock(LockingObject) { //do something } } } LockingObjectここで何と名付けるべきですか?また、変数の名前だけでなく、ロック時にコード内でどのように見えるかを考慮してください。 さまざまな例を見てきましたが、しっかりしたアドバイスはないようです。 の多数の使用法SyncRoot(およびなどのバリエーション_syncRoot)。 コードサンプル: lock(SyncRoot)、lock(_syncRoot) これは、VBの同等のSyncLockステートメント、SyncRootICollectionクラスのいくつかに存在するプロパティ、およびある種のSyncRootデザインパターンの一部に影響を受けているようです(おそらく悪い考えです) C#コンテキストにいるので、VBishの名前を付けたいかどうかはわかりません。さらに悪いことに、VBでは、変数にキーワードと同じ名前を付けます。これが混乱の原因になるかどうかはわかりません。 thisLockおよびlockThisMSDNの記事から:C#lockステートメント、VB SyncLockステートメント コードサンプル: lock(thisLock)、lock(lockThis) これらが例のために最低限純粋に命名されたかどうかはわかりません staticクラス/メソッド内でこれを使用している場合、ちょっと変です。 編集:ロックに関するウィキペディアの記事も、この命名を例に使用しています PadLock(さまざまなケーシングの)のいくつかの使用法 コードサンプル: lock(PadLock)、lock(padlock) 悪くないが、私の唯一の牛肉は、それは当然の画像呼び出した物理私は関連付けるていない傾向があり、「南京錠」抽象スレッドのコンセプトを。 ロックするものに基づいてロックに名前を付ける コードサンプル: lock(messagesLock)、lock(DictionaryLock)、lock(commandQueueLock) VB SyncRoot MSDNページの例にはsimpleMessageList、プライベートmessagesLockオブジェクトの例があります 実装の詳細は変更される可能性があるため、ロックしている型(「DictionaryLock」)に対してロックに名前を付けることは良い考えではないと思います。ロックしているコンセプト/オブジェクト( "messagesLock"または …