1. 程式人生 > >java開啟多個執行緒,執行完成後再執行主執行緒

java開啟多個執行緒,執行完成後再執行主執行緒

博主昨天去一家公司面試,被面試官問到一個問題,如果開啟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方法等待執行緒執行完成,當所有執行緒執行完成後再執行後面的主執行緒方法。