AQS:队列同步器,是JUC包中构建锁或者其他同步组件的基础框架。
Java中的大部分同步类(ReentrantLock、CountDownLatch、Semaphore)都是基于AbstractQueuedSynchronizer(AQS) 实现的。
AQS是一种提供了原子式管理同步状态、阻塞和唤醒线程功能以及队列模型的简单框架。
它使用了一个int成员变量(volatile int state)表示同步状态,通过内置的FIFO队列来完成资源获取线程的排队工作。
AbstractQueuedSynchronizer(AQS)
原文:https://www.cnblogs.com/yangyongjie/p/13847717.html