【发布时间】:2015-07-11 12:23:27
【问题描述】:
在 ExecutorCompletionService 中,我们有 take() 和 poll()。 一个阻塞,直到队列有一个未来,如果队列中没有未来,另一个返回 null。但是什么时候使用 take() 与 poll() 。有什么特殊条件来决定这一点,或者我们可以去任何??
【问题讨论】:
-
这肯定是用例吗?您使用合适的工作!
-
@BoristheSpider 我猜 OP 想知道至少一个使用这两种方法的用例。
-
@CKing 那么,在我看来,这个问题在这里是题外话。
-
@BoristheSpider 在我看来,这可能是一个基于意见的答案。
-
take()是一个阻塞 API。这意味着您的线程此时会阻塞。poll()是一个非阻塞 API。这意味着如果没有可用的内容,您可以继续处理。这有什么令人困惑的?如果你不能继续执行而不检索某些东西显然你需要阻止
标签: java multithreading executorservice executor