共計 607 個字符,預計需要花費 2 分鐘才能閱讀完成。
在 Java 中,join() 方法用于讓一個線程等待另一個線程完成其執(zhí)行。當一個線程調(diào)用另一個線程的 join() 方法時,它會暫時掛起自己的執(zhí)行,直到被調(diào)用的線程執(zhí)行完成。
join() 方法有兩種重載形式:
- join():讓當前線程等待被調(diào)用線程執(zhí)行完成。
- join(long millis):讓當前線程等待被調(diào)用線程執(zhí)行完成,最多等待 millis 毫秒,如果超過這個時間還沒有執(zhí)行完成,則當前線程繼續(xù)執(zhí)行。
示例代碼:
Thread t1 = new Thread(() -> {for (int i = 0; i < 5; i++) {System.out.println("Thread 1: " + i);
}
});
Thread t2 = new Thread(() -> {for (int i = 0; i < 5; i++) {System.out.println("Thread 2: " + i);
}
});
t1.start();
t2.start();
try {t1.join(); // 讓主線程等待 t1 執(zhí)行完成
t2.join(); // 讓主線程等待 t2 執(zhí)行完成
} catch (InterruptedException e) {e.printStackTrace();
}
System.out.println("All threads have finished.");
在上面的示例中,主線程會等待 t1 和 t2 線程執(zhí)行完成后才會輸出 "All threads have finished."。
丸趣 TV 網(wǎng) – 提供最優(yōu)質(zhì)的資源集合!
正文完