publicclassTestStopimplementsRunnable{// 1.设置一个标识位privateboolean flag =true;@Overridepublicvoidrun(){int i =0;while(flag){
System.out.println("run ---------Thread"+ i++);}}//2.设置一个公开的方法停止线程,转换标志位publicvoidstop(){this.flag =false;}publicstaticvoidmain(String[] args){
TestStop t =newTestStop();newThread(t).start();for(int i =0; i <1000; i++){
System.out.println("main-----"+ i);if(i ==900){// 调用stop方法切换标志位,让线程停止
t.stop();
System.out.println("线程停止了");}}}}
线程状态线程停止测试stop1.建议线程正常停止----->利用次数,不建议死循环2.建议使用标志位----->设置一个标志位3.不要使用stop或者destroy等过时或者JDK不建议使用的方法代码演示public class TestStop implements Runnable { // 1.设置一个标识位 private boolean flag = true; @Override public void run() { int i = 0; wh