ConcurrentHashMap是由Segment数组结构HashEntry数组结构组成。Segment是一种可重入锁ReentrantLock,在ConcurrentHashMap里扮演锁的角色,HashEntry则用于存储键值对数据。一个ConcurrentHashMap里包含一个Segment数组,Segment的结构和HashMap类似,是一种数组和链表结构, 一个Segment里包含一个HashEntry数组,每个HashEntry是一个链表结构的元素, 每个Segment守护者一个HashEntry数组里的元素,当对HashEntry数组的数据进行修改时,必须首先获得它对应的Segment锁。
数据结构图:
ConcurrentHashMap原理

ConcurrentHashMap不同于HashMap,它既不允许key值为null,也不允许value值为null

相关文章:

  • 2022-12-23
  • 2021-07-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-10
  • 2021-07-30
  • 2021-08-30
  • 2021-05-15
猜你喜欢
相关资源
相似解决方案