java多线程快速入门(十五)
Posted cppdy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java多线程快速入门(十五)相关的知识,希望对你有一定的参考价值。
使用violate关键字解决了变量的可见性问题(volatile让多线程刷新falg的值)
package com.cppdy; class MyThread11 extends Thread { //volatile让多个线程刷新falg的值 public volatile boolean falg = true; @Override public void run() { System.out.println("子线程开始执行啦"); while (falg) { } System.out.println("子线程结束执行啦"); } public void setFalg(boolean falg) { this.falg=falg; System.out.println("falg的值:"+this.falg); } } public class ThreadDemo11 { public static void main(String[] args) throws Exception { MyThread11 mt = new MyThread11(); mt.start(); Thread.sleep(1000); mt.setFalg(false); System.out.println("主线程结束啦"); } }
当更改falg的值,volatile会更新其它线程falg的值
以上是关于java多线程快速入门(十五)的主要内容,如果未能解决你的问题,请参考以下文章