溫馨提示×

Java中的Thread.join()如何使用

小億
98
2023-08-11 22:17:05
欄目: 編程語言

Thread.join()方法用于等待一個線程執(zhí)行完成。它可以在一個線程中調用另一個線程的join()方法,使得當前線程等待被調用線程執(zhí)行完成后再繼續(xù)執(zhí)行。

以下是Thread.join()方法的使用示例:

public class ThreadJoinExample {
public static void main(String[] args) throws InterruptedException {
Thread thread1 = new Thread(() -> {
System.out.println("Thread 1 is running");
try {
Thread.sleep(2000); // 模擬線程1的執(zhí)行時間
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Thread 1 is finished");
});
Thread thread2 = new Thread(() -> {
System.out.println("Thread 2 is running");
try {
Thread.sleep(3000); // 模擬線程2的執(zhí)行時間
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Thread 2 is finished");
});
thread1.start();
thread2.start();
thread1.join(); // 等待線程1執(zhí)行完成
thread2.join(); // 等待線程2執(zhí)行完成
System.out.println("All threads are finished");
}
}

在上述示例中,我們創(chuàng)建了兩個線程(thread1和thread2),它們分別打印一些信息并休眠一段時間。在主線程中,我們依次調用thread1.join()和thread2.join()方法,從而等待這兩個線程執(zhí)行完成。最后打印"All threads are finished"表示所有線程執(zhí)行完成。

注意:join()方法會拋出InterruptedException異常,因此需要進行異常處理。

0