程序不会立即终止,当所有执行器服务任务都完成
我把一堆可运行的对象放到一个执行器服务中:
// simplified content of main method
ExecutorService threadPool = Executors.newCachedThreadPool();
for(int i = 0; i < workerCount; i++) {
threadPool.execute(new Worker());
}
我希望我的程序/进程在所有工人完成后立即停止。但根据我的日志,再过20-30秒,这种情况才会发生。工人没有分配任何资源,事实上,他们目前什么都不做。
不要误会我的意思,这对我来说不是一个关键问题,我只是试图理解正在发生的事情,我想知道这是否是正常行为。