package com.lyon.demo.test.mayi; public class DemoVolatile{ public static void main(String[] args) throws InterruptedException { TestVolatile testVolatile = new TestVolatile(); testVolatile.start(); Thread.sleep(300); testVolatile.isRun(false); System.out.println(testVolatile.flag); } } class TestVolatile extends Thread{ //可见性 本地内存更改,刷新主内存 //public volatile boolean flag = true; //设置可见性,程序停止了 public boolean flag = true;//程序未停止 @Override public void run() { System.out.println("子线程开始执行..."); while (flag) { } System.out.println("子线程结束执行..."); } public void isRun(boolean flag){ this.flag = flag; } }
多线程复习之volatile线程之间的可见性
最新推荐文章于 2023-02-24 22:51:54 发布