线程的生命周期之线程“插队“

发布时间:2026/6/10 22:33:28

线程的生命周期之线程“插队“ 如大家所了解的线程生命周期就是线程从出生到结束的全过程。Java 里主要分‌6 种状态‌包括新建、可运行、阻塞、等待、计时等待和终止 。‌‌‌线程插队Thread 提供了让一个线程等待另一个线程完成的方法—— join () 方法。当在某个程序执行流中调用其他线程的 join () 方法时调用线程将被阻塞直到被 join () 方法加入的 join 线程执行完为止。以下是一个使用 join 方法的 Java 多线程代码示例public class JoinThreadExample { public static void main(String[] args) throws InterruptedException { Thread t1 new Thread(() - { System.out.println(Thread 1 started); try { Thread.sleep(5000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println(Thread 1 finished); }); Thread t2 new Thread(() - { System.out.println(Thread 2 started); try { Thread.sleep(3000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println(Thread 2 finished); }); t1.start(); t2.start(); // 使用 join 方法让主线程等待 t1 和 t2 线程执行完毕后再继续执行 t1.join(); t2.join(); System.out.println(All threads finished); } }在这个例子中我们创建了两个线程 t1 和 t2 它们分别会休眠 5 秒和 3 秒然后打印出一条信息。我们使用 join 方法将主线程阻塞直到 t1 和 t2 线程执行完毕后再继续执行主线程。最后我们打印出一条 All threads finished 消息表示所有线程都已经执行完毕。

相关新闻