前言为什么需要内存模型什么是内存模块编程语言编译器cpu 前言 为什么需要内存模型 什么是内存模块内存模型类似于协议,规范了各个层级之间的约束 编程语言:语言和程序员之间的协议编译器:编程语言和编译器之间的协议,防止编译器过度优化cpu:cpu和编译器之间的约束 happen-before synchorize-with 编程语言 每个编程语言都有自己的memory order,这里仅记录C++ 11的memory order. 编译器 cpu