JetBrains Rider 2026.1 Help

コードインスペクション:'volatile' フィールドへのキャプチャされた参照は 'volatile' として扱われません

volatile フィールドを参照渡しすると、呼び出されたメソッド内で通常の volatile アクセス保証が失われます。 これにより、同期コードが誤解を招いたり、安全でなくなったりする可能性があります。

このインスペクションは、サポートされているインターロック API などの特殊なケースを除き、 volatile フィールドを参照渡しする ref および out 引数を報告します。

インスペクションは実質的に CS0420 コンパイラー警告(英語)と同じです。

サンプル

class Example { private volatile int _value; void Update(ref int x) { } void Test() { Update(ref _value); } }
class Example { private volatile int _value; void Update(ref int x) { } void Test() { var value = _value; Update(ref value); } }

クイックフィックス

応急処置として、ローカル変数を導入し、その変数を渡す方法があります。

2026 年 6 月 12 日