一个问题,如果开启 10 个线程,但是需要这 10 个线程都执行完成后,再交由主线程统一输入,如何实现?下面我贴出代码:
int count = 10;
List<Thread> workers = new ArrayList<>();
for(int i = 0; i < count; i++) {
Thread worker = new Thread(new Runnable() {
@Override
public void run() {
System.out.println("执行子线程");
}
});
worker.start();
workers.add(worker);
}
for(int i = 0; i < count; i++) {
workers.get(i).join();
}
System.out.println("执行主线程");
所有线程 start 之后,通过 join 方法等待线程执行完成,当所有线程执行完成后再执行后面的主线程方法。

