gpt4 book ai didi

java - 如何在所有线程完成时立即做某事?

转载 作者:行者123 更新时间:2023-11-29 08:08:47 25 4
gpt4 key购买 nike

假设我想要运行 n 个线程,并且我想在所有线程完成时输出一些内容。以下是我尝试过的方法:

//This uses a ThreadGroup called tGroup
while(tGroup.activeCount() > 0) {
try {
Thread.sleep(10000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}

接下来只是一个 while 循环和一个存储线程的 ArrayList

boolean alive = true;
int count = 0;
while (alive) {
count = 0;
for (int i = 0; i < numThreads; i++) {
if (!threads.get(i).isAlive()) {
count++;
}
if (count == numThreads) {
alive = false;
break;
}
}
}

最佳答案

遍历所有线程并join() 每个线程。 join() 将阻塞任何未完成的线程,直到它完成。

关于java - 如何在所有线程完成时立即做某事?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9492547/

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