线程:Java主线程等待子线程结束
使用Thread.join()方法:
1 public class App { 2 3 public static void main(String[] args) { 4 testMain(); 5 } 6 7 public static void testMain(){ 8 //实例化一个子线程 9 Thread th = new Thread(new Runnable() { 10 11 @Override 12 public void run() { 13 for(int i=0; i<50; i++){ 14 try { 15 Thread.sleep(1000); 16 } catch (InterruptedException e) { 17 e.printStackTrace(); 18 } 19 System.out.println("我是子线程......"+i); 20 } 21 } 22 }); 23 24 //子线程开启 25 th.start(); 26 27 //主线程 28 for(int i=0; i<10; i++){ 29 try { 30 Thread.sleep(1000); 31 } catch (InterruptedException e) { 32 e.printStackTrace(); 33 } 34 System.out.println("主线程:"+i); 35 } 36 37 try { 38 //Thread.join 39 th.join(); 40 } catch (InterruptedException e) { 41 e.printStackTrace(); 42 } 43 44 System.out.println("主线程结尾处....."); 45 } 46 47 }
运行结果: