这是std::atomic:http://en.cppreference.com/w/cpp/atomic/atomic的文档

阅读我收集的其他问题后,它会生成某种特殊的机器指令(即锁定添加),因此您不必在变量周围使用互斥体。

我想知道它是如何工作的,使用它们有哪些限制?

最佳答案

这个话题确实可以写一本书。您可能不会以这种格式得到任何明确的答案。

观看Herb Sutters视频,这些确实是我在该主题上看到的最清晰的讨论:

https://herbsutter.com/2013/02/11/atomic-weapons-the-c-memory-model-and-modern-hardware/

请参阅“第1部分”和“第2部分”的链接。

关于c++ - 什么是C++原子变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41597821/

10-13 06:18