JMM解决什么?1、各线程工作内存的数据不一致性问题2、JIT编译器对指令重排的问题3、CPU执行乱序的问题
JMM做了什么?1、定义规范2、提供实现(提供一系列原语,比如:synchronized和volatile来封装底层的实现供开发者直接使用)