ExecutorService.invokeAll vs Future.get 对于每个结果 - 差异



不合适的标题,对不起。我想等到所有结果的状态thread。我可以使用 ExecutorService.invokeAll 并调用 future.get()//来做到这一点,这将等待 for 循环中的结果,如果两者都提供相同的功能,那么为什么两个不同的功能,请告诉我除了在 collection 中提交任务之外还有其他不同。

他们不做同样的事情。 invokeall 方法是执行任务的方法,并将阻止,直到所有任务都完成(成功与否)。完成所有任务后,它返回期货列表。然后,您可以为每个期货调用 future.get() 来获取结果(或者为那些未成功完成的任务调用 ExecutionException)

最新更新