Interlocked.Exchange布尔值是否有等价物?
Interlocked.Exchange
例如返回先前值并且不需要锁定的值的原子交换?
没有; 使用整数而不是布尔值.
原则上可以编写这样的东西(cmpxchg,底层处理器指令,可以在x64上的x86,8,16,32,64和128位操作数上对8,16,32和64位操作数进行操作),但实际上大多数API都坚持使用指针和双指针(x86上的32位和64位,x64上的64位和128位)操作数,因为它们只是你真正需要的.