請向我解釋爲什麼下面的代碼拋出IllegalThreadStateException?爲什麼要做Thread.interrupt()拋出IllegalThreadStateException?
try
{
if(thread1 != null)
{
if(thread1.isAlive());
{
thread1.interrupt(); //it is ok
thread1.join();
}
}
if(thread2 != null)
{
if(thread2.isAlive());
{
thread2.interrupt(); //throw IllegalThreadStateException
thread2.join();
}
}
}
catch(IllegalThreadStateException e)
{
System.exit(0);
}
它在運行語句thread2.interrupt()時拋出IllegalThreadStateException。但是thread1.interrupt()是可以的。
請向我解釋。
非常感謝!
什麼是異常消息? – SLaks 2011-12-28 01:54:09
來自e.toString()的消息僅爲「java.lang.IllegalThreadStateException」 – Levanphong7887 2011-12-28 02:00:36
e.toString()不是消息。檢查'getMessage()'或'printStackTrace()'。 – SLaks 2011-12-28 02:06:05