美文网首页
并发编程工具(一)CountDownLatch

并发编程工具(一)CountDownLatch

作者: 圆企鹅i | 来源:发表于2021-04-17 20:41 被阅读0次

    爱称:并行计数器
    简介:简单好用,易上手


    image.png
    //任务计数
     CountDownLatch labelDownLatch = new CountDownLatch(task.size());
     taskList.forEach((k, v) -> {
                    synchronized (labelDownLatch) {
                        threadPool.execute(() -> {
                            try {
                              //查询
                            } catch (Exception e) {
                               //exception
                            } finally {
                                 //防止任务中途出错 主线程一直等待
                                labelDownLatch.countDown();
                                //ps:遇到过线程不安全情况 计数出问题 //可以不通过finally 使用await(Long)超时停止
                            }
                           
                        });
                    }
                });
                //超时时间 防止主线程卡死
                labelDownLatch.await(5L, TimeUnit.SECONDS);
    

    相关文章

      网友评论

          本文标题:并发编程工具(一)CountDownLatch

          本文链接:https://www.haomeiwen.com/subject/bwjplltx.html