ConcurrentHashMap的两次hash有什么不同
时间: 2023-11-16 08:01:49 浏览: 127
ConcurrentHashMap相对于HashMap和Hashtable最大的不同在于,它使用了分段锁的机制,将整个Map分成了多个Segment,每个Segment默认情况下都是由一个锁来控制的。在ConcurrentHashMap中,put和get操作都需要进行两次hash操作,第一次hash到达指定的Segment,第二次hash到达Segment里面的Entry,然后在遍历Entry链表。这样做的好处是,可以减小锁的粒度,提高并发度,从而提高ConcurrentHashMap的并发性能。
阅读全文