1.简介 volatile 在Java日常开发中,尤其是并发编程中,是一个高频使用的关键字,它提供了一种轻量级的同步机制(常用于和synchronized比较),用来修饰成员变量。volatile 具有如下两大特性: 1. 保证内存可见性 2. 禁止指令重排序 volatile 无法保证原子性。 2.内存可见性 我们先看一段代码: public class Test { public static boolean flag = false; public static void main(String[] args) throws Exception { Thread...