Thread的join方法是用来等待一个线程执行完毕的方法。当一个线程调用另一个线程的join方法时,它会等待该线程执行完毕后再继续执行。
具体原理如下:
当一个线程调用另一个线程的join方法时,当前线程会进入到等待状态,直到被调用的线程执行完毕。
被调用的线程执行完毕后,会调用notifyAll方法唤醒等待的线程。
被调用的线程执行完毕后,会释放掉自己的锁,从而使得等待的线程可以获得锁继续执行。
需要注意的是,join方法只能等待一个线程执行完毕,如果需要等待多个线程执行完毕,可以使用CountDownLatch或者CyclicBarrier等多线程协调工具。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: 数据库中JOIN的用法是什么