CountDownLatch实现原理
CountDownLatch在多线程同步中,通过维护count变量并保证其原子性操作,并通过countDown方法和await()两个方法实现同步功能,首先通过建立CountDownLatch对象,并且传入参数为count的初始值。如果一个线程调用await调用方法,那么线程便进入阻塞,并阻塞队列。如果调用一个线程调用countDown()方法,则会使count-1;当count的值为0时,这个时候阻塞队列中线程将会被逐个唤醒,从而进入后续操作。
CountDownLatch在多线程同步中,通过维护count变量并保证其原子性操作,并通过countDown方法和await()两个方法实现同步功能,首先通过建立CountDownLatch对象,并且传入参数为count的初始值。如果一个线程调用await调用方法,那么线程便进入阻塞,并阻塞队列。如果调用一个线程调用countDown()方法,则会使count-1;当count的值为0时,这个时候阻塞队列中线程将会被逐个唤醒,从而进入后续操作。