美文网首页
关于Thread的join方法

关于Thread的join方法

作者: DeppWang | 来源:发表于2017-11-26 12:02 被阅读0次

题目

以下代码的输出什么?

public class MyThread extends Thread{
    public  void  run(){
        System.out.println("test");
    }
    public static void main(String[] args){
        Thread t = new MyThread();
        t.start();
        System.out.println("main");
        try{
            t.join();
        }catch (Exception e){
            e.printStackTrace();
        }
        System.out.println("main2");
    }
}

分析与解答

答案是:

main
test
main2

Thread.join方法是将指定线程加入当前线程,将两个交替执行的线程转换成顺序执行。上面的例子中,语句t.join(),在线程main中,调用线程t的join方法,将线程t加入线程main中,先执行完线程t,再执行main线程。

所以会在输出main2前,运行线程t的run方法输出test。

更多相关知识点可以看看---Java多线程中join方法的理解

相关文章

网友评论

      本文标题:关于Thread的join方法

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