优雅的停止线程
class Message {
public boolean flagStop = false;// 标记 true=停止线程
}
class StopThread implements Runnable {
private Message message;// 仓库
public StopThread(Message message) {
this.message = message;
}
@Override
public void run() {
for (int i = 0; i < Long.MAX_VALUE; i++) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
if (message.flagStop) {
System.out.println("结束进程");
break;
}
System.out.print(">");
}
}
}
public class TestDemo {
public static void main(String[] args) throws InterruptedException {
Message message = new Message();
StopThread thread = new StopThread(message);
new Thread(thread).start();
Thread.sleep(10000);
message.flagStop = true;
}
}