美文网首页
线程的interupt方法的作用

线程的interupt方法的作用

作者: 宋雾代 | 来源:发表于2019-02-24 13:18 被阅读0次

interrupt()只是改变中断状态而已。interrupt()不会中断一个正在运行的线程。这一方法实际上完成的是,给受阻塞的线程抛出一个中断信号,这样受阻线程就得以退出阻塞的状态。更确切的说,如果线程被Object.wait、Thread.join和Thread.sleep三种方法之一阻塞,那么它将接收到一个中断异常(InterruptedException),从而提早地终结被阻塞状态。
如果线程没有被阻塞,这时调用interrupt()将不起作用;否则,线程就将得到InterruptedException异常(该线程必须事先预备好处理此状况),接着逃离阻塞状态。
线程A在执行sleep,wait,join时,线程B调用线程A的interrupt方法,的确这一个时候A会有InterruptedException 异常抛出来。但这其实是在sleep、wait、join这些方法内部会不断检查中断状态的值,而自己抛出的InterruptedException。

相关文章

  • 线程的interupt方法的作用

    interrupt()只是改变中断状态而已。interrupt()不会中断一个正在运行的线程。这一方法实际上完成的...

  • Java线程不常用的方法

    一、概述 Java线程中有些低频使用的方法,比如 thread.join() thread.interupt() ...

  • Producer-Customer

    定义 notify与interrupt notify是Object的方法,interupt是Threa...

  • 锁的可重入性

    方法getHoldCount()的作用是查询当前线程保持此锁定的个数。 方法getQueueLength()的作用...

  • 线程join()方法的作用

    一、join线程的作用 join()方法:Thread提供的让一个线程去等待另一个线程完成。当在某个程序执行流中(...

  • 多线程快速入门(第一天)

    线程基础知识 join()方法作用join作用是让其他线程变为等待, t1.join();// 让其他线程...

  • 关闭线程

    终止线程 stop方法,已经被弃用,无法预期 interrupt interrupt方法其作用是中断此线程(此线程...

  • 正确使用interupt中断线程

    不安全的中断方式:循环中设置标志位flag 中断线程的时候如果我的业务逻辑是个阻塞的逻辑,那么设置flag是不能立...

  • 线程间的通讯

    方法wait()的作用是使当前执行代码的线程进行等待,wait()方法是Object类的方法,该方法用来将当前线程...

  • java线程之Thread.join()方法

    1. Thread.join 方法的作用 方法 join 的作用是 使所属的线程对象正常执行 run() 方法中的...

网友评论

      本文标题:线程的interupt方法的作用

      本文链接:https://www.haomeiwen.com/subject/hcnvyqtx.html