当锁处于无锁状态时,object头中有25位用来标识哈希码。我想知道hashcode的用处。
发布于 2019-04-02 21:04:13
这是一个实现细节,因此真正的定义在源代码中,例如these comments应该解释其中的一些细节。
对于32-bit VM,默认hashCode为25位(不知道您从何处获得23 ),对于64-bit VM,则为31。
我猜你所说的无锁状态是指有偏向的锁定,但它要么是一个,要么是另一个,而不是两者同时存在,因为简单地说,标记中没有空格用于两个工作。
用处是一样的(不管你说的是什么意思)--只是因为有更少的比特,所以预计会有更高的冲突。
https://stackoverflow.com/questions/55471337
复制相似问题