ConcurrentHashMap

47 阅读1分钟

1,底层数据结构:

JDK1.7底层采用分段的数组+链表实现

JDK1.8采用的数据结构跟HashMap1.8的结构一样,数组+链表/红黑树

2,加锁的方式

JDK1.7采用Segment分段锁,底层使用的是ReentranLock

JDK1.8采用CAS添加新节点,采用synchronized锁定链表或红黑树的首节点,相对于Segment分段锁粒度更细,性能更好