题
我知道,在英特尔TBB模板类似退出,除此之外我找不到对谷歌或Boost库的任何实现。
解决方案
您可以找到有关该功能的实现在提升有讨论: HTTP: //lists.boost.org/Archives/boost/2008/11/144803.php
>能否N2427 - C ++原子类型和操作来实现
>没有编译器的帮助?
没有。
他们并不需要是内在如果你可以写内嵌汇编(或单独编译汇编程序 就此而言),那么你可以写 操作本身直接。您 甚至可以使用简单的C ++ (用于负载例如只是简单的分配 或存储)。你需要的原因 编译器支持阻止 不恰当的优化:原子 操作不能被优化掉了,而 一般不得重新排序 之前或之后任何其他操作。 这意味着,即使非原子 之前的原子进行存储 商店必须是完整的,不能 在寄存器(例如)被高速缓存。 此外,该加载后会出现 原子操作不能被吊起 之前的原子运算。一些 编译器,只用内联汇编 足够。在别人的呼唤 外部功能就足够了。 MSVC 提供 _ReadWriteBarrier()来提供编译器排序。其他编译器 需要其他标志。
不隶属于 StackOverflow