如果一个线程没有执行完直接终止的话,会出现异常。
如何正确的终止一个线程,使用布尔标记
public class ThreadTest05 {
public static void main(String[] args) {
RunnableMy r =new RunnableMy();
Thread t =new Thread(r) ;
t.setName("t");
t.start();
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
//终止程序,什么时候想终止就什么时候false
r.run=false;
}
}
class RunnableMy implements Runnable{
boolean run =true;
@Override
public void run() {
for (int i = 0; i < 10; i++) {
if (run){
System.out.println(Thread.currentThread().getName());
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}else {
return;
}
}
}
}