Advertisement

在线段中断、等待与睡眠

阅读量:

1. 线程中断

该类实现了能够中断其他线程的功能。一旦某个线程被强行中断时,则会引发java.langInterruptedException异常。该机制包含以下三个主要方法。

在未正常退出的情况下被强行终止存在极大的风险性。这可能导致预想不到的巨大负面影响因此,在这一方面Thread.suspend和Thread.stop等方法已经被废弃不用了。也就是说虽然不能直接将一个线程强行挂断但有时候确实有必要让某个线程归零或退出特定等待状态此时采用较为优雅的方式就是在该线程上施加中断请求让它自行处理后续事宜

  • void interrupt(): 中断调用此方法的Thread对象所关联的线程。

当一条线程因执行Thread类中的sleep()或join()方法而陷入睡眠状态时,则该线程的中断标志将被清除,并触发InterruptedException异常。

  • static boolean interrupted(): 检查当前线程是否已被打断(被中止),该方法会清除当前线程的打断标志
    • boolean isInterrupted(): 同样用于检查当前线程是否已被打断(被中止),但不会清除当前线程的打断标志
复制代码
    public class InterruptThread {
    	public static

全部评论 (0)

还没有任何评论哟~