package cn.thread2;
/**
* 终止线程
* 1.线程正常执行完毕
* 2.外部干涉,加入标识
* 注:不要使用stop destroy方法
* @author Chill Lyn
*
*/
public class TerminateThread implements Runnable {
// 创建标识
private boolean flag = true;
private String name;
public TerminateThread(String name) {
this.name = name;
}
@Override
public void run() {
int i = 0;
// 关联标识
while (flag) {
System.out.println(name + i++);
}
}
// 提供方法
public void terminate() {
this.flag = false;
System.out.println(name + "KO");
}
public static void main(String[] args) {
TerminateThread tt = new TerminateThread("abc");
new Thread(tt).start();
for (int i = 0; i < 100; i++) {
if (i == 50) {
tt.terminate();
}
System.out.println("main" + i);
}
}
}
Java_多线程_终止线程的两种方式
最新推荐文章于 2023-04-06 10:08:15 发布
