7、线程状态

线程状态5状态

新建 new

就绪 start()

运行  cpu调度

阻塞 blocked

停止 stop

 

package com.testthread1;
/**
 * 1、建议线程正常停止,利用次数,不建议死循环;
 * 2、建议设置标志位,
 * 3、不用使用stop或destroy,或jdk不建议使用的方法
 */
public class TestStop implements Runnable{
    //设置一个标志位,位了安全,设置为私有的
    private boolean flag = true;
    @Override
    public void run() {
        int i = 0;
        while (flag) {
            System.out.println("thread run :" + i);
        }
    }
    //设置一个公开的方法,停止线程
    public void stop(){
        this.flag=false;
    }


    public static void main(String[] args) {
        TestStop testStop = new TestStop();
        new Thread(testStop).start();

        for (int i = 0; i < 110; i++) {
            System.out.println("main :"+i);
            if (i==90){
                testStop.stop();
                System.out.println("线程该停止了");
            }
        }

    }
}

 

posted @ 2022-07-24 17:05  颓废且努力奋斗的人  阅读(16)  评论(0编辑  收藏  举报