package com.Java;
public class TestStop implements Runnable {
// 测试线程停止
// 1.建议线程正常停止 -->利用次数 不建议死循环
// 2.建议使用标志位--> 设置一个标志位
// 3.不要使用stop和destroy等过时和jdk不建议使用的方法
// 1.设立标志位 为了线程安全 设成私有
private boolean flag = true;
@Override
public void run() {
int i = 0;
while (flag) {
System.out.println("线程正在运行" + i++);
}
}
// 2.设立一个公开的方法 转换标志位
public void stop() {
flag = false;
}
public static void main(String[] args) {
TestStop ts = new TestStop();
new Thread(ts).start();
for (int i = 0; i < 1000; i++) {
System.out.println("main线程" + i);
if (i == 900) {
System.out.println("线程该结束了");
ts.stop();
}
}
}
}