Sal*_*ake 8 c# multithreading
刚刚遇到一个程序,其中+ =用于线程之间的共享变量,所以+ =线程安全,即原子地执行添加和赋值?
Lee*_*Lee 8
不,它不是线程安全的,因为它相当于:
int temp = orig + value; orig = temp;
你可以Interlocked.Add改用:
Interlocked.Add
Interlocked.Add(ref orig, value);
归档时间:
11 年,11 月 前
查看次数:
744 次
最近记录: