zoukankan      html  css  js  c++  java
  • 多线程之 CountDownLatch

    CountDownLatch,一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。

    CountDownLatch如其所写,是一个倒计数的锁存器,当计数减至0时触发特定的事件。利用这种特性,可以让主线程等待子线程的结束。

    主要方法

     public CountDownLatch(int count);

     public void countDown();

     public void await() throws InterruptedException
     

    构造方法参数指定了计数的次数

    countDown方法,当前线程调用此方法,则计数减一

    awaint方法,调用此方法会一直阻塞当前线程,直到计时器的值为0

    ExecutorService thradPool = Executors.newFixedThreadPool(5);

    final CountDownLatch cl = new CountDownLatch(5);

    for(int i = 0 ; i<5; i++){

      thradPool.execute(new Runnable() { 

      @Override

      public void run() {

        cl.countDown();

      }

    }

    thradPool.shutdown();

    cl.await();  //全部线程执行完毕之后

  • 相关阅读:
    char
    export和export default
    递归打印文件目录
    centso7 安装redmine
    sonar结合jenkins
    sonar安装
    gitlab+jenkins
    centos5 安装redmine
    elk安装最佳实践
    elk认证模块x-pack安装
  • 原文地址:https://www.cnblogs.com/ytfcz/p/4270660.html
Copyright © 2011-2022 走看看