线程join方法

作者: 传说中的大哥 | 来源:发表于2018-11-19 15:47 被阅读0次

    某些情况、主线程中启用了子线程,如果子线程需要大量的算法,需要运算的时间较长,主线程可能会在子线程结束前就结束,这个时候如果想等待子线程结束后再结束主线程,可以使用join()方法。

    例:

    public class JoinTest {
        public static void main(String[] args) throws InterruptedException {
            Thread thread1= new Thread(()->{
                try {
                    Thread.sleep(9000);//子线程处理中
                    System.out.println("子线程处理完成");
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            });
            thread1.start();
            thread1.join();
            System.out.println("主线程结束");
        }
    }
    

    结果:

    子线程处理完成
    主线程结束
    

    如图上结果所示 ,加入join()方法后,主线程只有等待子线程计算完成后,才会返回结果。

    相关文章

      网友评论

        本文标题:线程join方法

        本文链接:https://www.haomeiwen.com/subject/xhhafqtx.html