ReSharper 2026.1 Help

代码检查:可疑的 'volatile' 字段使用:复合操作不是原子的。 'Interlocked' 类可以代替使用。

此检查会报告对 volatile 字段执行复合赋值以及自增或自减操作。 将字段声明为 volatile 并不会使 +=++--??= 等操作具有原子性。 这些操作仍然会执行多个步骤,并且在多线程访问时可能产生竞争。

示例

class Counter { private volatile int myValue; void Increment() { myValue++; } }
using System.Threading; class Counter { private int myValue; void Increment() { Interlocked.Increment(ref myValue); } }
2026年 5月 8日