コード検査: スレッド静的フィールドに初期化子があります
ThreadStaticAttribute
は、フィールドをスレッドローカルにします。これは、すべてのスレッドがフィールドに対応する独自の参照を持つことを意味します。ThreadStaticAttribute
でマークされたフィールドは静的で、静的に初期化されていない必要があります。
この属性はインスタンスフィールドには影響しません。スレッドローカルインスタンスフィールドが必要な場合は、.NET 4.0 で導入された ThreadLocal<>
タイプを使用できます。
静的フィールドに初期化子がある場合、この初期化子は静的コンストラクターを実行するスレッドで 1 回のみ呼び出されます。すべてのスレッドで初期化が必要な場合、このフィールドは遅延初期化プロパティでカプセル化できます。
代わりに、ThreadLocal<>
クラスを使用することもできます(.NET 4.0 以降)。
関連ページ:
![](https://resources.jetbrains.com/help/img/rider/2024.1/code_analysis_target_framework.png)
コードインスペクション設定を構成する
設計時コードインスペクションを構成する:デフォルトでは、JetBrains Rider はサポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかにかかわらず、コードインスペクションを特定の範囲でいつでも実行できます。「鉛筆」ウィジェットを使用して、エディターから直接インスペクション設定をすばやく調整するか、設定でより詳細な構成を行うことができます。を押すか、メニューから(W...
![](https://pleiades.io/icons/rider.png)
コード検査: '?:' 式の真と偽が同一ブランチ
これはかなり明白です。次の式は次のとおりです。return condition ? result : result;Return If(condition, result, result) 次のものと同じです return result;Return result は何が返されているかに影響しないからです。コード検査: ジェネリクス型の静的フィールドまたは自動プロパティコード検査: スレッド静的フィールドに初期化子があります...