C语言一个int占几个字节(int多少字节)

大家好,我是阿星,欢迎来到Java并发编程系列第六篇ReentrantReadWriteLock基础,今天我们来聊一聊读写状态的设计。 我相信不少读者,在看JDK源码时,会看到位运算代码,可能有些人和阿

本文最后更新时间:  2023-02-05 06:04:51

大家好,我是阿星,欢迎来到Java并发编程系列第六篇ReentrantReadWriteLock基础,今天我们来聊一聊读写状态的设计。

我相信不少读者,在看JDK源码时,会看到位运算代码,可能有些人和阿星一样是转行的,缺乏计算机相关的基础知识,看的是一头雾水。

导致有些人直接被劝退,也有些人选择理解字面上的意思,细节跳过。

但是一颗疑惑的种子在我们心中埋了下来「为什么使用位运算就能达到这样的效果?」。

恰好ReentrantReadWriteLock读写状态的设计用到了位运算,我们以此来展开今天的话题。

一段位运算代码

我们来到ReentrantReadWriteLock.Sync内部类,发现了这段代码(后面以RRW简称

//偏移位数static final int SHARED_SHIFT = 16;//读锁计数基本单位static final int SHARED_UNIT = (1

温馨提示:内容均由网友自行发布提供,仅用于学习交流,如有版权问题,请联系我们。