volatile关键字理解 概念举个栗子 概念 volatile 通过禁用 CPU 缓存,来保证多线程操作变量时的可见性 在对这个变量的读写,不能使用 CPU 缓存,必须从内存中读取或者写入。 举个栗子 并发操作 a = 1 实现 a++ 不加volatile,从内存读取a=1后,后续的操作(读写)都是在cpu缓存中进行的。 开启两个线程循环调用a++,循环的次数越多,得到的值越接近循环次数本身,因为读入到cpu缓存后一直进行a++操作,而每次的值都是从自己的缓存中取得,只有执行完循环才会写回内存。