如果Interlocked.Increment是原子的,我为什么要使用++来代替



我认为这个原子操作比++快。我只看到有利于Interlocked.Increment的优势.它的缺点是什么?

原子意味着它是线程安全的(即一个线程不可能读取值,而另一个线程正在更改它。 由于需要使用线程同步机制,这使得它变慢,而不是更快。 如果您不关心线程安全,则要使用 ++。 以下是关于 ++ 运算符在不同上下文中的相对性能的一些讨论。

原子并不意味着它更快。事实上,它几乎肯定会更慢。

在并发编程中,一个 操作(或操作集)为 原子、线性化、不可分割或 如果它出现在 系统的其余部分发生 瞬间。

这仅意味着在手术过程中没有可观察到的副作用。它没有说明手术需要多长时间。

相关内容

  • 没有找到相关文章

最新更新