`
xijunhu
  • 浏览: 152390 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
社区版块
存档分类
最新评论

CountDownLatch 使用详解

阅读更多
CountDownLatch下面例子比较简单

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
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics