#30天专注成长计划#java CountDownLatch 用法

场景:老板招了三个工人给他干活,当三个工人的活全部干完的时候,老板会过来检查。如果没有干完,老板处在等待状态。

什么是CountDownLatch?

CountDownLatch 是Java的concurrent包里面的一个计数器,只不过这个计数器的操作是原子操作,同时只能有一个线程去操作这个计数器,

也就是同时只能有一个线程去减这个计数器里面的值。

关键词计数器原子操作 一个

主要看他的构造器参数和await()方法和countdown() 方法和count()方法。

await():如果调用当前方法,当前的线程处于阻塞状态,其他线程执行完任务后调用countdown() 直到count()数减少到0  的时候,才会执行await() 以后的代码。

1.定义一个老板类Boss


2.定义一个工人类 Worker


3.定义一个测试类:


测试结果:



另外两个并发编程的辅助类是CyclicBarrier 和Semaphore

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容