学了一点线程知识,下面说的比较浅。楼主再找知识看看吧 调用interrupt()方法后,线程中断状态将会被置位。但这只是一个标志位,一般线程会将中断看做是终止的请求,被中断的线程可以决定如何响应中断。如果线程被阻塞,就无法检测中断状态,将产生InterruptedException一场。 判断线程是否中断,有两个方法,一个是Tread的静态方法interrupted(),但调用这个方***使线程中断状态重置为false;另一个方法是isInterrupted()方法。 为了确保调用interrupt()方法后,线程能够退出,可以采用双重安全退出机制,以isInterrupted状态(而不是isInterrupted())作为线程循环或者执行的条件,在interrupt()方法中,对isInterrupted状态进行设置,并在退出后,将isInterrupted进行重置。
点赞 2

相关推荐

purcoter:虚拟货币预测正确率百分之99,还要找工作干嘛,不早就财富自由了
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客网
牛客企业服务