使用方式
在 A 线程中调用 B 线程的join()
方法,使 A 线程进入等待态,直到 B 线程运行完毕,A 线程被唤醒,继续运行。
示例如下:main 线程输出*“下单”后进入等待态, cook 线程输出“厨师做饭”,执行完毕并唤醒 main 线程,然后 main 线程输出“吃饭”。如果不使用 cookThread.join()
方法,则可能会先输出“吃饭”,再输出“厨师做饭”*。
public class Main {
public static void main(String[] args) throws InterruptedException {
System.out.println(Thread.currentThread().getName() + ":下单");
Thread cookThread = new Thread(
() -> System.out.println(Thread.currentThread().getName() + ":厨师做饭"