沈阳专业网站制作团队,自己怎么做网站啊,logopond设计网站,wordpress做登录界面本文介绍两种主线程等待子线程的实现方式#xff0c;以5个子线程来说明#xff1a;1、使用Thread的join()方法#xff0c;join()方法会阻塞主线程继续向下执行。2、使用Java.util.concurrent中的CountDownLatch#xff0c;是一个倒数计数器。初始化时先设置一个倒数计数初始…本文介绍两种主线程等待子线程的实现方式以5个子线程来说明1、使用Thread的join()方法join()方法会阻塞主线程继续向下执行。2、使用Java.util.concurrent中的CountDownLatch是一个倒数计数器。初始化时先设置一个倒数计数初始值每调用一次countDown()方法倒数值减一他的await()方法会阻塞当前进程直到倒数至0。join方式代码如下package com.test.thread;import java.util.ArrayList;import java.util.List;public class MyThread extends Thread{public MyThread(String name){this.setName(name);}Overridepublic void run(){System.out.println(this.getName() staring...);System.out.println(this.getName() end...);}/*** param args*/public static void main(String[] args){System.out.println(main thread starting...);List list new ArrayList();for (int i 1; i 5; i){MyThread my new MyThread(Thrad i);my.start();list.add(my);}try{for (MyThread my : list){my.join();}}catch (InterruptedException e){e.printStackTrace();}System.out.println(main thread end...);}}运行结果如下main thread starting...Thrad 2 staring...Thrad 2 end...Thrad 4 staring...Thrad 4 end...Thrad 1 staring...Thrad 1 end...Thrad 3 staring...Thrad 3 end...Thrad 5 staring...Thrad 5 end...main thread end...CountDownLatch方式代码如下package com.test.thread;import java.util.concurrent.CountDownLatch;public class MyThread2 extends Thread{private CountDownLatch count;public MyThread2(CountDownLatch count, String name){this.count count;this.setName(name);}Overridepublic void run(){System.out.println(this.getName() staring...);System.out.println(this.getName() end...);this.count.countDown();}/*** param args*/public static void main(String[] args){System.out.println(main thread starting...);CountDownLatch count new CountDownLatch(5);for (int i 1; i 5; i){MyThread2 my new MyThread2(count, Thread i);my.start();}try{count.await();}catch (InterruptedException e){e.printStackTrace();}System.out.println(main thread end...);}}运行结果如下main thread starting...Thread 2 staring...Thread 2 end...Thread 4 staring...Thread 4 end...Thread 1 staring...Thread 1 end...Thread 3 staring...Thread 3 end...Thread 5 staring...Thread 5 end...main thread end..转自http://blog.csdn.net/nms312/article/details/30115055