【发布时间】:2012-02-22 12:44:36
【问题描述】:
我想将一些代码从 Java 移植到 C++11,但我对 volatile 关键字有点困惑。
我不熟悉 Java 语言,也不知道什么是 volatile 变量。它保证每个线程都可以访问变量的最新值——这是 C++ volatile 行为。但它通常用于同步 - 对 volatile 变量执行的所有操作都是原子的吗?
所以我认为 Java volatile 的 C++11 良好替代品将是 std::atomic。或者我完全错了,因为我错过了一些额外的 Java volatile 特性?
【问题讨论】:
标签: java c++ c++11 atomic volatile