基本概念 AQS(AbstractQueuedSynchronizer),顾名思义,是一个抽象的队列同步器. 它的队列是先进先出(FIFO)的等待队列 基于这个队列,AQS提供了一个实现阻塞锁的机制 最终,基于这个阻塞锁,可以实现多线程的同步 先进先出的等待队列 这个等待队列,是基于CLH锁实现的. CLH锁是以发明人命名的自旋锁,这个锁是一个基于队列的自旋锁,是对SpinLock,TicketLock的进化. 具体可以参考另外一篇文章,最好是可以自己实现下. CLH锁的基本原理: 使用FIFO…