executor 对象是否意味着在shutdown
? 我的意思是,如果我调用shutdown
或shutdownNow
在执行程序终止之后,我应该new
创建一个新的线程池还是有可能以某种方式“重置”/重用先前终止的执行程序并重用它?
更新:
如果我需要创建新的线程池,我如何“理解”之前的已经停止?
例如以下:
public void startPool(){
if(threadPool != null && !threadPool.isShutdown()){
return;
}
threadPool = Executors.newCachedThreadPool();
//other stuff
}
public void stopPool(){
if(threadPool != null){
threadPool.shutdown();
}
}
不管用。如果我调用stop
然后start
由于条件原因将不会创建新的线程池。对此进行编码的正确方法是什么?