.Net中的基本并发原语在哪里?
我特别想使用检查和设置操作符
您需要查看System.Threading
命名空间中的Interlocked类。CompareExchange
就是你要找的方法。
形式为CompareExchange(target, value, comparand)
,在伪码中表示if(target==comparand) target=value;
。
在Interlocked
类中还有很多其他有用的原子方法,如Increment, dec递减,Add和Exchange。
您可能正在寻找Interlocked.CompareExchange
。