参考:
AQS原理分析 https://blog.csdn.net/javazejian/article/details/75043422
重入读写锁原理分析 https://blog.csdn.net/LightOfMiracle/article/details/73184755