public class ThreadFlag extends Thread {
//当exit为true时,while循环退出,exit的默认值为false。在定义exit时,
//使用了一个Java关键字volatile,这个关键字的目的是使exit同步,也就是说在同一时刻只能由一个线程来修改exit的值
public volatile boolean exit = false;
@Override
public void run() {
while (!exit) {
System.out.println("该线程在运行中");
}
}
public static void main(String[] args) throws Exception {
ThreadFlag thread = new ThreadFlag();
thread.start();
sleep(5000); // 主线程延迟5秒
thread.exit = true; // 终止线程thread
thread.join();
System.out.println("线程退出!" + thread.isAlive());
}
}