在Java中,可以使用ExecutorService来管理线程池并执行任务。如果想让主线程等待ExecutorService中的所有任务完成,可以使用ExecutorService的awaitTermination方法。
具体步骤如下:
完整的代码示例:
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
public class Main {
public static void main(String[] args) {
ExecutorService executor = Executors.newFixedThreadPool(10);
// 提交任务
executor.execute(new Runnable() {
@Override
public void run() {
// 执行任务的代码
}
});
// 关闭线程池的提交通道
executor.shutdown();
try {
// 等待所有任务执行完成
executor.awaitTermination(1, TimeUnit.MINUTES);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
这样,主线程会等待所有任务执行完成后再继续执行后续的代码。
技术创作101训练营
云+社区开发者大会 长沙站
腾讯云GAME-TECH沙龙
云+社区技术沙龙[第14期]
云+社区技术沙龙[第9期]
云+社区技术沙龙[第18期]
技术创作101训练营
云+社区技术沙龙第33期
领取专属 10元无门槛券
手把手带您无忧上云