J2SE之Join方法

来源:互联网 发布:淘宝上好的 儿童服装店 编辑:程序博客网 时间:2024/05/21 06:30

看这个例子:


方法在t1.start();时产生一个分支,

执行public void run()

但是t1.join();是把产生的分支合并回来

当一个线程执行完了,才开始,相当于方法调用

所以程序先把子线程运行完,再运行主线程

 

public class TestJoin{public static void main(String[] args){MyThread2 t1 = new MyThread2("abcde");t1.start();try{t1.join();}catch(InterruptedException e){}for(int i ; i <= 10 ; i ++){System.out.println("i am main thread");}}class MyThread2 extends Thread{MyThreads(String s){super(s);}}public void run(){for (int i ; i <= 10 ; i ++){System.out.println("i am"+ getName());try{sleep(10000);}catch(InterruptedException e){return;}}}}


线程是这样运行的:



结果是这样的,程序先把子线程运行完,再运行主线程




0 0