ConcurrentHashMap分段锁

轩辕小不懂 发布于 2021-04-25 14:44
阅读 24
收藏 0
分类:Java开发
672
Pack
Pack

jdk1.7中:

ConcurrentHashMap 是由 Segment 数组结构和 HashEntry 数组结构组成。Segment 是一种可重入锁 ReentrantLock,在 ConcurrentHashMap 里扮演锁的角色,HashEntry 则用于存储键值对数据。

Segment数组的意义就是将一个大的table分割成多个小的table来进行加锁,也就是上面的提到的锁分离技术,而每一个Segment元素存储的是HashEntry数组+链表,这个和HashMap的数据存储结构一样。


请先 登录 后评论