ThreadPoolExecutor 线程池异常消失之刨根问底 (3)

注释:看到这我们终于明白,submit与execute方法实现上的差异了,以及前文的程序代码为什么submit提交不抛出异常,而execute提交抛出异常了吧。

四、总结

1)submit方法,针对异常信息捕获后调用setException 输出到FutureTask 中的outcome;
2)任务如果是用submit方法提交的,那就用futureTask的get方法去接收;
3)execute方法会将任务的异常信息,向上抛出;
4)使用线程池时,需要小心谨慎,做好程序的异常处理,日志记录;

.

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzxxww.html