多线程-join方法使用


 

 

 

1、join的用法

join可以让调用线程等待,直到被调用线程执行完成之后,才开始接着执行当前线程

例子:

public class JoinTest {

    public static void main(String[] args) {
        System.out.println("存活的线程为"+Thread.activeCount());
        Thread one = new Thread(new Runnable() {
            @Override
            public void run() {
                for (int i =0;i<10;i++){
                    try {
                        Thread.sleep(10);

                    }catch (Exception e){
                        e.printStackTrace();
                    }
                    System.out.println("输出线程的个数为"+i);
                }
            }
        });

        one.start();
        System.out.println("存活的线程为"+Thread.activeCount());

        try {
            one.join();  //主线程调用join方法,进入等待,等线程One执行完成后,才会接着往下执行
        }catch (Exception e){
            e.printStackTrace();
        }
        System.out.println("线程执行完毕");
    }

输出结果:

存活的线程为2
存活的线程为3
输出线程的个数为0
输出线程的个数为1
输出线程的个数为2
输出线程的个数为3
输出线程的个数为4
输出线程的个数为5
输出线程的个数为6
输出线程的个数为7
输出线程的个数为8
输出线程的个数为9
线程执行完毕

原创文章,作者:端木书台,如若转载,请注明出处:https://blog.ytso.com/270832.html

(0)
上一篇 2022年6月30日
下一篇 2022年6月30日

相关推荐

发表回复

登录后才能评论