CountDownLatch下面例子比较简单
参考:http://space.itpub.net/10742815/viewspace-611904
http://ideasforjava.iteye.com/blog/657295
http://kill8108.blog.163.com/blog/static/434199682010029102857607/
http://www.blogjava.net/vincent/archive/2007/09/28/149175.html
另外参考
线程池--java.util.concurrent 多线程框架
http://www.cnblogs.com/daidu/archive/2009/11/02/1594378.html
http://xiaobian.iteye.com/blog/178642
import java.util.concurrent.CountDownLatch;
public class CountDownLatchTest {
static class SimpleThread extends Thread {
private CountDownLatch latch;
public SimpleThread(CountDownLatch latch){
this.latch = latch;
}
@Override
public void run() {
System.out.println(this + " RUNNING.");
latch.countDown();
}
}
public static void main(String[] args) throws InterruptedException {
CountDownLatch latch = new CountDownLatch(5);
for(int i=0; i<5; i++) {
new SimpleThread(latch).start();
}
//等待所有子线程处理完成。
latch.await();
System.out.println("Over");
}
}
运行结果:
Thread[Thread-2,5,main] RUNNING.
Thread[Thread-0,5,main] RUNNING.
Thread[Thread-1,5,main] RUNNING.
Thread[Thread-4,5,main] RUNNING.
Thread[Thread-3,5,main] RUNNING.
Over
参考:http://space.itpub.net/10742815/viewspace-611904
http://ideasforjava.iteye.com/blog/657295
http://kill8108.blog.163.com/blog/static/434199682010029102857607/
http://www.blogjava.net/vincent/archive/2007/09/28/149175.html
另外参考
线程池--java.util.concurrent 多线程框架
http://www.cnblogs.com/daidu/archive/2009/11/02/1594378.html
http://xiaobian.iteye.com/blog/178642