synchronized 的替代品 ReentrantLock

本来这篇文章打算写下细粒度锁的几种通用实现的,但在实践的过程中,我觉得有必要先介绍一下 ReentrantLock 这个类,可能大部分人都没有使用过,其实我也是一样,在接触到这个类之前都是只用过 synchronized 关键字,直到接触到了 ReentrantLock 这个类才知道还有这个东西,哎