当前使用jdk版本为14; 1.8 12等各有不同;
AQS是所有锁,比如reentranctLock、syclicBarrier、CountDownLatch、CountDownLatch等的核心;
一句话概括:
AQS是由一个volatile修饰的state和监控这个state的双向链构成,双项链每个节点是一个Node,每一个Node对应一个线程;通过tryAcquire()、compareAndSetSate()来获取锁;
分析源码(debug一下一步步走看看),记录一下(个人记录):