一、简介 二、并发编程的3个基本概念 三、锁的互斥和可见性 四、Java的内存模型JMM以及共享变量的可见性 五、volatile变量的特性 六、volatile不适用的场景 七、volatile原理 八、单例模式的双重锁为什么要加volatile 一、简介