CountDownLantch源码

一、类介绍

       CountDownLantch 倒数计时器,一个同步辅助类,一个线程(或者多个),等待另外N个线程完成某个事情后才能执行。用于给定的计数初始化 CountDownLantch ,由于调用了 countDown()方法,所在在当前计数到达零之前,await()方法会一直受阻塞。之后会释放所有等待的线程,await 的后续调用都将立即返回。注意:这种现象只出现一次,即 CountDownLantch 无法重置

二、使用场景

       在一些应用场合中,需要等待某个条件到达要求后才能做后面的事情;同时当线程都完成后也会触发事件,以便进行后面的操作。这个时候可以使用 CountDownLantch 。CountDownLantch 最重要的两个方法是 countDown() 和  await(),前者主要是倒数一次,后者是等待倒数到0,如果没有到达0,就只有阻塞等待了。

三、源代码分析

四、示例demo

运行结果如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值