2 张图,让你一秒理解 CountDownLatch、CyclicBarrier
声明:本文转载自https://my.oschina.net/u/2602893/blog/2885461,转载目的在于传递更多信息,仅供学习交流之用。如有侵权行为,请联系我,我会及时删除。
CountDownLatch (倒数闩,Latch:门闩)
经常用于 监听某些初始化操作,等 初始化线程 全部执行完毕后,才通知 主线程 继续工作
a) 即 一个线程处于阻塞的状态下,他要收到 多少次通知,才能被 苏醒,并继续往下执行
b) 注意:只能阻塞 一个线程
c) "countDown.countDown() 到了 0,并使得 countDown.await() 苏醒" 之后,仍旧能进行 countDown.countDown(),并且不会报错;但是countDown.getCount() 始终为 0
CyclicBarrier(同步屏障,cyclic:周期的,循环的,barrier:屏障)
场景假设:每个线程代表一个 跑步运动员,当 所有运动员 都准备好,才能一起出发,只要有一个人没有准备好,那么大家都要等待他
a) 注意:阻塞的是 每个线程
抱拳了,老铁!
本文发表于2018年11月21日 18:00
(c)注:本文转载自https://my.oschina.net/u/2602893/blog/2885461,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除.
阅读 1783 讨论 0 喜欢 0