Q:1、SLEEP什么时候才会扔InterrputedException异常
2、我对这段程序是这样理解的:开始··子线程就绪,主线程睡10秒,然后子线程每隔1秒打印一次当前时间,当10秒够了,主线程睡醒了,往下进行,这时候catch里面没东西(这时候主线程睡醒了会扔出异常吗?),往下进行,执行interrupt(),然后这个方法扔出异常,子线程抓住,并处理(退出)。对吗?求指教。。。
主线程调用abort才会触发InterrputedException
你的程序事实上除非强制关闭,否则不会触发InterrputedException
如果当线程处于阻塞状态时,并且是由sleep方法引起的阻塞,那么会将线程的中断标志重新设置为false,并抛出一个InterruptedException
总的来说interrupt,只是改变的中端的标志,具体之后的操作,要看程序本身所处的环境
关于interrupt的一点小结