java并发计数器_Java并发学习之CountDownLatch实现原理及正确姿势

CountDownLatch实现原理及使用姿势在并发编程的场景中,最常见的一个case是某个任务的执行,需要等到多个线程都执行完毕之后才可以进行,CountDownLatch可以很好解决这个问题

下面将主要从使用和实现原理两个方面进行说明,围绕点如下CountDownLatch 是个什么鬼

怎么用(结合case说明)

底层实现原理(及如何保障功能的正常性)eb6ca6968de114e5297c5adace42ce25.png

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

比较有意思的是,CountDownLatch并未继承自其他的类or接口,在jdk中这样的类并不多见(多半是我孤陋寡闻)

0. 接口定义

在使用之前,得先了解下其定义的几个方法80d6b5a1e3a45886f3d3e2cbed9d5000.png

也就几个接口,基本上都是比较常见的了,需要注意的是不要把await()和Object#wait()方法弄混了,否则就gg思密达了...

1. Demo演示

依然以讲解ReentrantLock中的例子来说明,多线程实现累加f22f59b7be989488fa659e52f2d54ebc.png

实现如下be000a3adeddd9e3a006f160c75b0668.png

输出

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值