为什么当RuntimeException发生时,java ThreadPoolExecutor杀死线程?
我只能猜测,
直接
ThreadPoolExecutor.execute(...)进行线程调用而不将其包装在a中的原因是,这样,即使您不在乎结果,也不会招致该线程的开销。
runnable.run()
__
FutureTask``FutureTask
如果您的线程抛出
RuntimeException,这是很罕见的事情,并且没有将异常返回给调用者的机制,那么为什么要为包装类付费呢?因此,在最坏的情况下,线程将被杀死并被线程池收割并重新启动。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)