image.pngimage.pngimage.pngimage.png

    1. package com.pln.state;
    2. //测试stop;
    3. //1.建议线程正常停止,利用次数,不建议死循环
    4. //2.建议使用标志位,设置一个标志位
    5. //3.不要使用stop或者destroy等过时或者JDK不建议使用的方法
    6. public class TestStop implements Runnable{
    7. //1.设置一个标志位
    8. private boolean flag = true;
    9. @Override
    10. public void run() {
    11. int i = 0;
    12. while (flag){
    13. System.out.println("run-------="+i++);
    14. }
    15. }
    16. //设置一个公开的方法停止线程,转换标志位
    17. public void stop(){
    18. this.flag = false;
    19. }
    20. public static void main(String[] args) {
    21. TestStop testStop = new TestStop();
    22. new Thread(testStop).start();
    23. for (int i = 0; i <1000 ; i++) {
    24. System.out.println("main="+i);
    25. if(i>=999){
    26. testStop.stop();
    27. System.out.println("线程停止了");
    28. }
    29. }
    30. }
    31. }