java多线程系列:CountDownLatch

这篇文章将介绍CountDownLatch这个同步工具类的基本信息以及经过案例来介绍如何使用这个工具。java

CountDownLatch是java.util.concurrent包下面的一个工具类,能够用来协调多个线程之间的同步,或者提及到线程之间的通讯(而不是用做互斥的做用)。 它能够容许一个或者多个线程等待其余线程完成操做。 
图片来源于网络网络

案例

模拟游戏一开始须要加载一些基础数据后才能开始游戏,基础数据加载完能够继续加载其余数据。基础数据包含人物、地图、背景、物品等等。工具

解决方案

利用CountDownLatch来实现,基础数据加载完毕后,CountDownLatch计数器进行减一操做。当CountDownLatch计数器为0时,表示能够开始游戏。 示意图以下spa

定义抽象类

相关文章
相关标签/搜索