package com.yeyue.demo01;
/*
1、建议线程正常停止----->利用次数,不建议死循环
2、建议使用标志位----->设置一个标志位
3、不要使用stop或者distory等过时或者jdk不建议的使用方法
*/
public class TestStop implements Runnable{
//定义线程中使用的标志位
private boolean flag = true;
@Override
public void run() {
//线程体使用其标志位
while(flag){
System.out.println("Thread is running ...");
}
}
//对外提供方法改变标志位
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 < 1000; i++) {
System.out.println("main"+i);
if(i==500){
testStop.stop(); //调用方法改变标志位,停止线程
System.out.println("线程该停止了");
}
}
}
}
多线程之线程停止
最新推荐文章于 2021-10-03 23:40:34 发布