停止线程
1、建议线程正常停止,线程自己停下来才是最安全的,利用次数,不建议死循环。
2、建议使用标志位,设置一个标志位。
3、不要使用stop或者destroy等过时或者JDK不建议使用的方法。
public class StopThread implements Runnable{
//设置一个标志位
private boolean flag = true;
public void run() {
int i = 0;
while(flag) {
System.out.println("线程在运行中"+i++);
}
}
//设置一个公开方法停止线程,转换标志位
public void stop() {
this.flag = false;
}
//主方法内测试停止线程
public static void main(String[] args) {
StopThread st = new StopThread();
new Thread(st).start();
for(int i = 0 ; i < 10 ; i++) {
System.out.println("main" + i);
if(i == 9) {
//调用stop方法停止线程
st.stop();
System.out.println("线程已停止。");
}
}
}
}