ExecutorService 动态添加任务
ExecutorService add tasks dynamically
我有 10 个任务的 ExecutorService,我想处理例如24个任务。前 10 个任务我可以立即添加,但是当某些任务完成后我想添加另一个。
是否有一些最佳实践、通用方法或模式来实现此行为?
执行器有 s queue¹ 用于在等待线程变得可用于处理任务时保留任务。您不需要做任何特殊的事情,只需将任务提交给执行者即可。
¹ 这不完全正确,队列可能是有限的。但是在一般用例中(除非另有说明),队列是无限的,你不需要担心。
我有 10 个任务的 ExecutorService,我想处理例如24个任务。前 10 个任务我可以立即添加,但是当某些任务完成后我想添加另一个。
是否有一些最佳实践、通用方法或模式来实现此行为?
执行器有 s queue¹ 用于在等待线程变得可用于处理任务时保留任务。您不需要做任何特殊的事情,只需将任务提交给执行者即可。
¹ 这不完全正确,队列可能是有限的。但是在一般用例中(除非另有说明),队列是无限的,你不需要担心。