Java 在独立线程中,什么情况可能导致中断异常?
在我的应用程序中,我有一段简单的时钟代码:Java 在独立线程中,什么情况可能导致中断异常?,java,thread-safety,Java,Thread Safety,在我的应用程序中,我有一段简单的时钟代码: while(!clockRunning){ time++; repaint(); Thread.sleep(1000); } }catch (InterruptedException e){} 我开始好奇什么情况会导致上述异常 : 如果任何线程中断了当前线程。电话中断了 引发此异常时,当前线程的状态将被清除 基本上,当另一个线程调用此线程中断方法时。更重要的是,你要么睡在EDT上,要么从非EDT的线程调用paint。两者都大错
while(!clockRunning){
time++;
repaint();
Thread.sleep(1000);
}
}catch (InterruptedException e){}
我开始好奇什么情况会导致上述异常
:
如果任何线程中断了当前线程。电话中断了
引发此异常时,当前线程的状态将被清除
基本上,当另一个线程调用此线程中断方法时。更重要的是,你要么睡在EDT上,要么从非EDT的线程调用paint。两者都大错特错。