前面的博客中主要描述的关于线程的概念,通过源码分析了解线程的基本操作方式,但是如何在线程运行期间获取异常信息呢?这就要使用到一个Hook线程了
线程运行时的异常
在Thread类中,关于线程运行时异常的API一共有四个如下图所示
UncaughtExceptionHandler
在线程执行的过程中是没有办法检查抛出异常的,这个是因为执行的方法没有返回值而且线程又运行在属于自己的上下文环境中,所以由它派生出的线程无法获取到它运行过程中的异常,所以Java提供了一个接口UncaughtExceptionHandler,当在运行过程中线程出现异常,就会调用UncaughtExceptionHandler这个接口,如下代码
@FunctionalInterface
public