请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

正常运行的线程在interrupt之后会处于什么状态?

老师:
这里有个问题,就是一个正常运行的线程在被interrupt之后会处于一个什么状态,是跟wait或者sleep一样吗?如果是,那要怎么再次唤醒它呢?也是通过notify吗?

正在回答

1回答

同学好,正如视频里说的一样,正常运行的线程,调用interrupt之后,只是把其体内的中断状态字段改变,实际还是需要根据业务去处理,比如说判断为中断后是否还要继续执行或者提前结束,此时线程依然处于Running状态。而对于wait或者sleep,由于已经让出执行,则此时咱们连中断状态都设置不了,只能抛出InterruptedException提早结束等待或者阻塞的状态,变回runnable,执行catch的逻辑。

具体可以看看这个

https://blog.csdn.net/canot/article/details/51087772

2 回复 有任何疑惑可以回复我~
  • 提问者 阿刚Ace #1
    我就是想问一个正常执行的线程,在收到interrupt之后,它会停止吗?
    回复 有任何疑惑可以回复我~ 2019-03-18 10:15:57
  • 翔仔 回复 提问者 阿刚Ace #2
    不会停止呢。。只是一种提示
    回复 有任何疑惑可以回复我~ 2019-03-19 00:36:10
  • 提问者 阿刚Ace #3
    非常感谢!
    回复 有任何疑惑可以回复我~ 2019-03-20 20:30:22
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信