易失性与互锁与锁定
假设一个类有一个public int counter由多个线程访问的字段。这,这个int只会增加或减少。
public int counter
int
要增加这个字段,应该使用哪种方法,以及为什么?
lock(this.locker) this.counter++;,
lock(this.locker) this.counter++;
Interlocked.Increment(ref this.counter);,
Interlocked.Increment(ref this.counter);
counter
public volatile.
public volatile
现在我发现volatile,我一直在移走许多lock声明和使用Interlocked..但有理由不这么做吗?
volatile
lock
Interlocked
冉冉说
湖上湖
相关分类