Brief introduction to AbstractQueuedSynchronizer by Using a Simple Mutex Example
Too Long; Didn't Read
AbstractQueuedSynchronizer is a masterpiece <a href="https://hackernoon.com/tagged/java" target="_blank">java</a> class authored by Doug Lea. It is the underlying data structure that provides the <a href="https://hackernoon.com/tagged/acquire" target="_blank">acquire</a>, tryAcquire, release, tryRelease … interface to CountDownLatch, Semaphore, ReentrantLock, and ReadWriteLock. So AbstractQueuedSynchronizer is basically the backbone of java.util.concurrent package.