@TOC
AQS是什么?
队列同步器AbstractQueueSynchronized(以下简称AQS),是用来构建锁或者其他同步组件的基础框架,它使用一个int成员变量表示同步状态,通过内置的FIFO队列来完成资源获取线程的排队工作,并发包的作者期望它能够成为实现大部分同步需求的基础。
AQS长什么样?
成员属性
head:指向阻塞队列的头节点tail:指向阻塞队列的尾节点state:非常重要的东西,用它来做并发控制,相当于信号量,不同state的使用方式可以用作不同的锁,可以排他锁(ReentrantLock),可以共享锁(ReentrantReadWriteLock)
通过ReentrantLock深入学习AQS
加锁
解锁