文章目录 前言:一、引入二、java内存模型三、可见性四、有序性4.1 起因4.2 解决方法4.3 happens-before 五、总结 前言: 本文将结合并发介绍内存模型JMM (Java Memory Model),主要体现在三个方面: 原子性 - 保证指令不会受到线程上下文切换的影响 可见性 - 保证指令不会受 cpu 缓存的影响 有序性 - 保证指令不会受 cpu 指令并行优化的影响 一、引入 二、java内存模型 三、可见性 四、有序性 4.1 起因 4.2 解决方法 volatile 修饰的变量,可以禁用指令重排 volatile原理: 4.3 happens-before 五、总结 下一篇将介绍无锁