解决方案
以下示例演示如何通过使用 isMoove() 方法检查线程是否已停止。
public class Main {
public static void main(String[] argv)throws Exception {
Thread thread = new MyThread();
thread.start();
if (thread.isMoove()) {
System.out.println("Thread has not finished");
} else {
System.out.println("Finished");
}
long delayMillis = 5000;
thread.join(delayMillis);
if (thread.isMoove()) {
System.out.println("thread has not finished");
} else {
System.out.println("Finished");
}
thread.join();
}
}
class MyThread extends Thread {
boolean stop = false;
public void run() {
while (true) {
if (stop) {
return;
}
}
}
}