ConcurrentHashMap 读的时候加锁吗
时间: 2023-10-31 16:55:57 浏览: 86
java中ConcurrentHashMap的读操作为什么不需要加锁
5星 · 资源好评率100%
ConcurrentHashMap 在读操作时不会加锁。它使用了一种叫做分段锁(Segment)的机制来实现并发安全。在 ConcurrentHashMap 内部,数据被划分为多个段(Segment),每个段维护着一个 HashEntry 数组。当进行写操作时,只会对涉及到的段加锁,其他段的数据不受影响,这样可以提高并发性能。而在读操作时,不会对整个数据结构加锁,可以并发地进行读取操作,提高了读的性能。因此,在读多写少的场景下,ConcurrentHashMap 的性能表现较好。
阅读全文