Java Volatile理解
Volatile修饰的变量,其存储方式与普通存储不一样,它是直接在主存内进行读写操作。
package mobai.others; /** * volatile用于保证数据的同步 也就是可见性 * @author MAIBENBEN * */ public class VolatileTest { private volatile static int num = 0; public static void main(String[] args) throws InterruptedException { new Thread(()-> { while(num==0) {//此处不写代码 //正常情况下是死循环,但是num是被volatile修饰了,所以外部可以修改num的值且被获取,所以这里不是死循环 } }).start(); // 1秒后停止 Thread.sleep(1000L); num=1; } }