我有一个循环{Loop-1}
,我开始线程。包含{Loop-1}
实现 Daemon 和 Runnable 的类。在启动{Loop-1}
的线程中,调用我使用 ExecutorServicecoordinate()
的类的方法。Coordinate.java
当Coordinate.java
创建对象时(这种情况发生一次 BEFORE {Loop-1}
),我实例化一个 ExecutorService
pool = Executors.newFixedThreadPool(2);
在coordinate()
我创建一个实现 Callable 的类的两个对象中,然后我启动它们并将结果存储在未来结果列表中。
callableResults = pool.invokeAll(threads);
之后,我尝试在循环中获取结果result = future.get();
然后,我返回{Loop-1}
并重新开始整个过程(调用coordinate()
,,,invokeAll()
future.get()
现在我有以下问题: 1.我得到结果后是否需要关闭 ExecutorService 池coordinate()
?{Loop-1}
2. 每次通话时我都需要重新创建池coordinate()
吗?
感谢您的回答!:-)