gpt4 book ai didi

Java - 固定数量任务的ExecutorService

转载 作者:行者123 更新时间:2023-11-29 03:39:23 24 4
gpt4 key购买 nike

我想使用 Java 中的 ExecutorService 实现以下行为。我有大量任务要完成,这些任务都可以并行完成。我想按以下方式从我的主线程中安排 N 个任务:

  • 如果 Activity 任务的数量是 < N => 安排新任务(执行服务已经这样做了)
  • 否则,在主线程上阻塞,直到完成其中一个任务 => 与将 N 个第一个任务存储在队列中然后将第一个任务出列并对其调用 get() 几乎相同)

有没有办法调整 ExecutorService 来执行上述操作?

最佳答案

使用 N 个线程的 ThreadPoolExecutor,用 SynchronousQueue 构造。每次您向线程池提交任务时,主线程都会被同步队列阻塞,直到池中的线程从队列中获取任务。

关于Java - 固定数量任务的ExecutorService,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13882115/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com