Interlocked介绍
Posted fanfan-90
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Interlocked介绍相关的知识,希望对你有一定的参考价值。
说到线程安全,不要一下子就想到加锁,尤其是可能会调用频繁或者是要求高性能的场合。
Interlocked:
MSDN 描述:为多个线程共享的变量提供原子操作。主要函数如下:
Interlocked.Increment 原子操作,递增指定变量的值并存储结果。
Interlocked.Decrement 原子操作,递减指定变量的值并存储结果。
Interlocked.Add 原子操作,添加两个整数并用两者的和替换第一个整数
Interlocked.Exchange原子操作,赋值
Interlocked.CompareExchange(ref a, b, c); 原子操作,a参数和c参数比较, 相等b替换a,不相等不替换。(方法返回值始终是第一个参数的原值)
以上是关于Interlocked介绍的主要内容,如果未能解决你的问题,请参考以下文章
Mono 上的 Interlocked.Read / Interlocked.Exchange 比 .NET 慢得多?
C#原子操作(Interlocked.Decrement和Interlocked.Increment)
Interlocked.Exchange<T> 比 Interlocked.CompareExchange<T> 慢吗?