c++ 内存模型

/* ENUM memory_order */
typedef enum memory_order {
    memory_order_relaxed,   //没有同步和顺序一致性要求,只要求原子性,内存操作可能是乱序
        memory_order_consume,  
    memory_order_acquire,  //保证之前的读操作都在这个读操作之前完成
    memory_order_release, // 保证之前的写操作都在这个写操作之前完成
    memory_order_acq_rel, // 结合了memory_order_acquire与memory_order_release
    memory_order_seq_cst //  在memory_order_acq_rel, 对于所有的原子操作都是顺序的
    } memory_order;

参考

1.http://en.cppreference.com/w/cpp/atomic/memory_order

你可能感兴趣的:(c++ 内存模型)