search

Home  >  Q&A  >  body text

Java多线程中,为何静态方法Thread.interrupted()既得到中断值,又清除中断状态?

在Java的多线程中,有三个有关中断的方法。其中isInterrupt和interrupted都能返回线程的中断状态,那么为何interrupted还要再清除中断状态,作用,意义,使用场景是什么?

高洛峰高洛峰2974 days ago839

reply all(1)I'll reply

  • 三叔

    三叔2016-10-29 09:58:21

    保存并清除中断状态,执行完代码再把中断状态还原掉,或者根据中断状态执行特定的逻辑

    等效于 getAndSet()


    reply
    0
  • Cancelreply