Java通过在主循环中判断Boolean来停止线程

 Java代码:

复制代码
package Threads;

/**
 * Created by Frank
 */
public class StopBoolean extends Thread {

    // 确保变化对其它线程可见(主要是主线程要可见)
    protected volatile boolean done = false;

    public void run() {
        while (!done) {
            System.out.println("StopBoolean running");
            try {
                sleep(720);
            } catch (InterruptedException e) {
                return;
            }
        }
        System.out.println("StopBoolean finished");
    }

    public void shutDown() {
        done = true;
    }

    public static void main(String[] args) throws InterruptedException {
        StopBoolean t1 = new StopBoolean();
        t1.start();
        Thread.sleep(1000 * 5);
        t1.shutDown();
    }
}
复制代码

posted on 2019-01-08 13:42  我是司  阅读(696)  评论(0)    收藏  举报

导航