">1内部采用ReentrantLock进行实现,通过扣减构造方法的count来进行判断是否应该唤醒当前线程,在最后的finally中又将计数重置为构造函数的入参count(#1),个人理解lock是为了并发操作中,防止扣减出错 1