我有一些遗留代码使用Interlocked.Equals来比较值.值可以是两个bool,也可以将结构数组与null进行比较.Resharper抱怨Interlocked.Equals说"通过派生类型访问类型的静态成员".我知道Equals不是Interlocked类的成员,而是对象类的成员.比较发生在一个线程中,所以我假设原始编码器想要进行比较作为原子操作因此使用Interlocked.既然object.Equals不是原子的,那么进行这些比较的正确,线程安全的方法是什么?注意,大多数数据是静态的,有些是静态的.