Join,CountDownLatch,CyclicBarrier,Semaphore和Exchanger
CountDownLatch允许一个或者多个线程等待其他线程完成操作,之后再对结果做统一处理;适用场景,分布式系统中对多个微服务的调用,并发执行并且必须等待全部执行完成才能继续执行后续操作;其实在java中默认的实现是join()方法,join()方法主要的作用是当前线程必须等待直到join线程执行完成之后才能继续执行后续的操作,其本质就是轮询判断join线程是否存活,如果存活则主线程继续等待,否