如果不需要在ThreadPool方案中创建新的Thread,那么它如何与刚刚完成run方法的同一线程一起工作,该Thread可以再次使用吗?
很简单-原始线程实际上从未完成。它只是等待另一个任务执行。用伪代码:
// No, this isn't even slightly accurate! General impression only :)while (!pool.isShutdown()) { Runnable task = pool.waitForTaskonQueue(); task.run();}(显然,当线程池关闭时,它也需要停止等待其他任务的线程,但是希望您能理解一般的想法。)



