Java 读写锁 ReentrantReadWriteLock 源码分析,还没搞懂JVM
Sync() {// 初始化 readHolds 这个 ThreadLocal 属性readHolds = new ThreadLocalHoldCounter();// 为了保证 readHolds 的内存可见性setState(getState()); // ensures visibility of readHolds}…}state 的高 16 位代表读锁的获取次数,包括重入次数,获取到读锁一次加 1,释放掉读锁一次减 1state 的低 16 位代表写锁的获取次数,因为写





