这篇文章将介绍CountDownLatch这个同步工具类的基本信息以及经过案例来介绍如何使用这个工具。java
CountDownLatch是java.util.concurrent
包下面的一个工具类,能够用来协调多个线程之间的同步,或者提及到线程之间的通讯(而不是用做互斥的做用)。 它能够容许一个或者多个线程等待其余线程完成操做。
网络
模拟游戏一开始须要加载一些基础数据后才能开始游戏,基础数据加载完能够继续加载其余数据。基础数据包含人物、地图、背景、物品等等。工具
利用CountDownLatch
来实现,基础数据加载完毕后,CountDownLatch
计数器进行减一操做。当CountDownLatch
计数器为0时,表示能够开始游戏。 示意图以下spa