我正在使用向上/向下计数锁存器将程序限制为 6 个线程,它可以工作,但我真正想要的是始终运行 6 个线程。这样当一个线程死亡时,另一个线程会启动。在下面的实现中,只要超时到期,它一次只创建 6 个新线程。
关于如何构建我的循环来实现这一点的任何建议?
int numThreads = 6;
CountUpDownLatch threadCounter = new CountUpDownLatch();
for(int t = 1; t <= numThreads; t++) {
while(list.hasNext()) {
new Thread(new ThreadController("processData",list.next())).start();
threadCounter.countUp();
}
try {
threadCounter.await(5, TimeUnit.MINUTES);
} catch (InterruptedException e) { e.printStackTrace(); }
}
莫回无
相关分类