JAVA 停止线程:flag标记 作者:马育民 • 2022-07-04 14:38 • 阅读:10070 # 说明 在 `run()` 方法中,每次执行时,先判断标记,再决定是执行还是终止执行 # 例子 ### 线程类 ``` package day21; public class S8提前停止线程 extends Thread{ private int length = 100; /** * 定义成员变量,默认为true,表示运行 */ private boolean flag = true; // 停止线程,将 flag 标记设置为false public void stop() { this.flag = false; } /** * 多线程要执行的代码,写在run() 中 */ @Override public void run() { for( int i=0;i<length;i++){ /* * 当flag为true时,正常运行 * 当flag为false时,停止 */ if(!flag){ return;//break } System.out.println("兔子跑了"+i+"米"); } System.out.println("兔子跑到终点,结束!"); } } ``` ### 测试类 ``` package day21; public class S8TEST { public static void main(String[] args) { S8提前停止线程 thread = new S8提前停止线程(); thread.start(); try { Thread.sleep(1); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } thread.stop(); } } ``` 原文出处:/show_1IX3cCy4eVc6.html