join方法应用之一——按顺序输出三个线程

哈喽,小伙伴们,大家好。今天给大家分享的是join方法的应用。因为join方法比较重要,所以就实际应用一下。当然,该程序主要是为了讲解join的作用。所以比较简单。好了 ,废话不多说,直奔主题。


题目

按顺序执行三个线程。比如A线程和B线程和C线程,这三个线程执行之后,输出ABC。

分析

我们首先要清楚join这个方法,不清楚的,可以去我的另外一篇博客查看。Thread重要的API—下—join方法,他的作用是join 某个线程 A,会使当前线程 B 进入等待,直到线程 A 结束生命周期,或者到达给定的时间,那么在此期间 B 线程是处于 Blocked 的。我们可以看出,join的作用就是让一个线程先执行,然后在执行其他线程。所以我们可以在线程的执行单元(run方法)里面,去调用其他线程的join方法,这样该线程就会等待其他线程执行完毕再执行。我们的目的就达到了。代码如下:

public static void main(String[] args) throws InterruptedException {
        Thread t1=new Thread(() ->{
            System.out.println(1);
            }
        );
        Thread t2=new Thread(() ->{
            try {
                t1.join();
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            System.out.println(2);
        }
        );
        Thread t3=new Thread(() ->{
            try {
                t2.join();
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            System.out.println(3);
        }
        );
        t2.start();
        t3.start();
        t1.start();
    }

总结:

该代码章节主要是为了让大家清楚join方法的含义,这个例子比较通俗易懂。也很简单,下一章节,会深入一点去讲解。好了,本节到此结束,谢谢大家的喜欢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值