试图用我的想法去上同时使用软件和硬件的记忆障碍,我可以禁用外,为了优化为与编译器的优化编译代码内部的特定功能的,因此我也使用像Peterson或Deker算法需要外的顺序没有执行实现软件旗语,我已经测试了以下代码包含两个SW屏障asm volatile("": : :"memory")和gcc内建HW屏障__sync_synchronize: #include <stdio.h>
int mai
我想了解如何在C++中工作内存障碍。 例如,我使用的std ::原子在这种情况下: #include <iostream>
#include <atomic>
int main()
{
std::atomic<int> a;
int n = load();//returns 1 or other value written by other thread
a.