- public final void stop(): 让线程停止,方法过失了,但还可以用
- public void interrupt(): 中断线程,并抛出InterruptedException,程序正常结束
实验代码
public class ThreadSleepDemp {
public static void main(String[] args) {
ThreadStop ts = new ThreadStop();
ts.start();
//超过3s ,线程停止
try {
Thread.sleep(3000);
ts.stop();
//ts.interrupt();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
public class ThreadStop extends Thread{
@Override
public void run(){
System.out.println("开始执行:" + new Date());
//我要休息5s!!
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
System.out.println("线程被终止了!");
}
System.out.println("执行结束:" + new Date());
}
}
在上述代码中分别使用stop和interrupt方法结果比较
- stop方法
开始执行:Fri Oct 30 11:09:42 GMT+08:00 2020
- interrupt方法
开始执行:Fri Oct 30 11:18:49 GMT+08:00 2020 线程被终止了! 执行结束:Fri Oct 30 11:18:52 GMT+08:00 2020