Java volatile关键字解读-多变的,易变的
volatile访问内存内存模型:
- 1.常用变量是由主内存加载到缓存,线程进一步获取变量内容。
- 2.volatile每次访问直接访问主内存cpu,保证缓存一致性,实现轻量级同步
Demo
public class VolatileDemo {
private static volatile boolean flag = false;
public static void main(String[] args){
Thread thread = new Thread(){
@Override
public void run() {
while(!flag){
System.out.print("0");
}
System.out.print("1");
}
};
thread.start();
try {
thread.sleep(5);
}catch (Exception e){
e.printStackTrace();
}
flag=true;
}
}
结果:
总结:适用于读多写少的场景
原文地址:https://www.cnblogs.com/heiqiubaihu/p/10329229.html
时间: 2024-11-03 21:24:24