跟踪程序中的所有异常

时间:2013-04-09 10:32:19

标签: java exception exception-handling try-catch

我正在写一个游戏程序,很少我会得到一个例外。我希望能够记录我在单独的线程上获得的所有异常。我的程序已经是多线程的。在某些情况下,我使用try catch,对于那些我只能设置一个异常变量到捕获的异常。但是,我希望能够找到所有线程上抛出的所有异常,而不将每个语句都放在try catch中。为了澄清,我希望异常对象不仅仅是异常的名称。

3 个答案:

答案 0 :(得分:2)

你想要Thread.UncaughtExceptionHandler

  

当线程因未捕获的异常而突然终止时调用的处理程序接口。   当一个线程由于未捕获的异常而即将终止时,Java虚拟机将使用Thread.getUncaughtExceptionHandler()向线程查询其UncaughtExceptionHandler,并将调用该处理程序的uncaughtException方法,并将该线程和异常作为参数传递。如果某个线程没有显式设置其UncaughtExceptionHandler,则其ThreadGroup对象将充当其UncaughtExceptionHandler。如果ThreadGroup对象对处理异常没有特殊要求,它可以将调用转发给默认的未捕获异常处理程序。

有关详细信息,请参阅here

答案 1 :(得分:0)

这可以使用 Spring AOP 来完成,这在这些情况下非常有用。

@AfterThrowing aspect

您将需要Spring AOP库。

先前已回答similar question

答案 2 :(得分:0)

相关问题