C#原子操作(Interlocked.Decrement和Interlocked.Increment)
Posted yaosj
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#原子操作(Interlocked.Decrement和Interlocked.Increment)相关的知识,希望对你有一定的参考价值。
一、概念
在多线程环境中,不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch (切换到另一个线程)。
二、类
System.Threading.Interlocked 静态类
三、常用函数(其他的自己看吧)
1.public static int Decrement(ref int location); //以原子操作的形式递减指定变量的值并存储结果
相当于 lock(obj)i--;
2.public static int Increment(ref int location); //以原子操作的形式递增指定变量的值并存储结果
相当于 lock(obj)i++;
以上是关于C#原子操作(Interlocked.Decrement和Interlocked.Increment)的主要内容,如果未能解决你的问题,请参考以下文章