Tôi có lớp chính Java, trong lớp, tôi bắt đầu một luồng mới, trong lớp chính, nó đợi cho đến khi luồng chết. Tại một số thời điểm, tôi ném một ngoại lệ thời gian chạy từ luồng, nhưng tôi không thể bắt ngoại lệ được ném từ luồng trong lớp chính.
Đây là mã:
public class Test extends Thread
{
public static void main(String[] args) throws InterruptedException
{
Test t = new Test();
try
{
t.start();
t.join();
}
catch(RuntimeException e)
{
System.out.println("** RuntimeException from main");
}
System.out.println("Main stoped");
}
@Override
public void run()
{
try
{
while(true)
{
System.out.println("** Started");
sleep(2000);
throw new RuntimeException("exception from thread");
}
}
catch (RuntimeException e)
{
System.out.println("** RuntimeException from thread");
throw e;
}
catch (InterruptedException e)
{
}
}
}
Có ai biết tại sao không?