**CountDownLatch**、**CyclicBarrier**和**Semaphore**工具类提供了一种并发流程控制的手段,**Exchanger**工具类则提供了在线程间交换数据的一种手段。
CountDownLatch允许一个或多个线程等待其他线程完成操作。
CyclicBarrier的字面意思是可循环使用(Cyclic)的屏障(Barrier)。它要做的事情是,让一组线程到达一个屏障(也可以叫同步点)时被阻塞,直到最后一个线程到达屏障时,屏障才会开门,所有被屏障拦截的线程才会继续运行。
Semaphore(信号量)是用来控制同时访问特定资源的线程数量,它通过协调各个线程,以保证合理的使用公共资源。
Exchanger(交换者)是一个用于线程间协作的工具类。Exchanger用于进行线程间的数据交换。