什么是AQS? AQS是JUC内存的基石,它本质上是一个抽象类,定义了多线程下资源争夺与释放的规则和过程,许多实现类都是继承于AQS,使用AQS的骨架. AQS的原理 AQS总体上来看是由一个FIFO(先进先出)队列和一个state属性配合组成资源分配机制的.FIFO用来存储线程结点的,state属性用来表示资源的状态,如果为0表示空闲,如果资源被某个线程获取到,那么这个state就会+1,释放-1.当其他线程试图争夺资源时会检查state值,如果发现不为0就会放弃争夺. 当然这只是总体上的原理…