AbstractQueuedSynchronizer(AQS)源码解析下

上篇描述了下AQS 独占锁框架的大体实现逻辑,而共享锁是AQS更重要的一部分,如Sempahore,CountDownLatch都是基于AQS共享锁实现的。下面就看具体的实现逻辑。
(1)tryAcquireShare
AbstractQueuedSynchronizer(AQS)源码解析下
原图地址

既然有获取资源就有释放共享资源。下面就是共享锁的释放实现逻辑。
(2)releaseShare
AbstractQueuedSynchronizer(AQS)源码解析下
原图地址