/**
* 终止线程:
* 1.线程正常执行完毕——>次数
* 2.外部干涉——>加入标识
* 不要使用stop、destroy
*/
public class TerminateThread implements Runnable {
// 用于标记线程体是否能够运行
private Boolean flag = true;
private String name;
public TerminateThread(String name) {
this.name = name;
}
@Override
public void run() {
while (flag) {
// 关联标识,true表示运行,false表示停止
System.out.println(name);
}
}
public void terminate() {
this.flag = false;
}
public static void main(String[] args) {
TerminateThread thread = new TerminateThread("name");
new Thread(thread).start();
for (int i = 0; i < 100; i++) {
System.out.println("1");
}
thread.terminate();
}
}
网友评论