【发布时间】:2015-05-16 06:23:56
【问题描述】:
我非常了解 C++ 中的 volatile 关键字。但在 C# 中,它似乎具有不同的含义,更多地与多线程相关。我认为 bool 操作是原子的,并且我认为如果操作是原子的,您将不会有线程问题。我错过了什么?
【问题讨论】:
-
volatile防止指令围绕变量访问重新排序。这是相当复杂的。见albahari.com/threading/… -
Eric Lippert's answer to another question其实对C++和C#在volatile语义上的差异有很好的描述。
标签: c# multithreading