在查看Clang和g++ C++11实现状态时,我注意到了一些奇怪的事情:
它们支持C++11原子性,但不支持C++11内存模型。
我印象中您必须拥有C++11内存模型才能使用原子性。那么支持原子性和内存模型之间究竟有什么区别?
缺乏内存模型支持是否意味着使用std::atomic<T>的合法C++11程序不具备seq consistent性?
参考资料:
http://clang.llvm.org/cxx_status.html
http://gcc.gnu.org/gcc-4.7/cxx0x_status.html
它们支持C++11原子性,但不支持C++11内存模型。
我印象中您必须拥有C++11内存模型才能使用原子性。那么支持原子性和内存模型之间究竟有什么区别?
缺乏内存模型支持是否意味着使用std::atomic<T>的合法C++11程序不具备seq consistent性?
参考资料:
http://clang.llvm.org/cxx_status.html
http://gcc.gnu.org/gcc-4.7/cxx0x_status.html