原子操作 和Inerlocked 常用于多线程同步

所谓原子操作,即多线程中一旦开始执行就只能执行完毕,无法被中断和暂停的线程操作。

这样就能避免中途变量有改变一类的异常;

Inerlocked属于threading空间。

用法如下:

例如,需要A+B,得出数据存储在A,则:

 Interlocked.Add(ref a, b);

需要A递增,则:

Interlocked.Increment(ref a);

 

总之,interlocked是用在具体的语句上的。lock则用在一定的条件语法,或者方法上;

posted @ 2020-09-27 11:01  奔腾的岩浆  阅读(114)  评论(0编辑  收藏  举报