Open Yuck1125 opened 5 years ago
https://yuck1125.github.io/2019/07/10/catch-callable-exception/#more
前言 分析前几天遇到的一个老代码留下的坑。线程池中运行Callable线程时抛出的异常捕获不到,简化的逻辑如图,环境是jdk8:运行结果: 解决方案 线程池返回Future<>,调用其get() 在Callable中 try-catch可能抛错的异常运行结果:源码分析 不难发现线程池提交时创建的类为FutureTask。12345678910
https://yuck1125.github.io/2019/07/10/catch-callable-exception/#more
前言 分析前几天遇到的一个老代码留下的坑。线程池中运行Callable线程时抛出的异常捕获不到,简化的逻辑如图,环境是jdk8:运行结果: 解决方案 线程池返回Future<>,调用其get() 在Callable中 try-catch可能抛错的异常运行结果:源码分析 不难发现线程池提交时创建的类为FutureTask。12345678910