mirror of
https://github.com/Snailclimb/JavaGuide
synced 2025-06-16 18:10:13 +08:00
修复拼写错误
This commit is contained in:
parent
c19d4f902b
commit
24afdffe2c
@ -284,7 +284,7 @@ static class Segment<K,V> extends ReentrantLock implements Serializable {
|
|||||||
|
|
||||||
### JDK1.8 (上面有示意图)
|
### JDK1.8 (上面有示意图)
|
||||||
|
|
||||||
ConcurrentHashMap取消了Segment分段锁,采用CAS和synchronized来保证并发安全。数据结构跟HashMap1.8的结构类似,数组+链表/红黑二叉树。Java 8在链表长度超过一定阈值(8)时将链表(寻址时间复杂度为O(N))转换为红黑树(寻址时间复杂度为O(long(N)))
|
ConcurrentHashMap取消了Segment分段锁,采用CAS和synchronized来保证并发安全。数据结构跟HashMap1.8的结构类似,数组+链表/红黑二叉树。Java 8在链表长度超过一定阈值(8)时将链表(寻址时间复杂度为O(N))转换为红黑树(寻址时间复杂度为O(log(N)))
|
||||||
|
|
||||||
synchronized只锁定当前链表或红黑二叉树的首节点,这样只要hash不冲突,就不会产生并发,效率又提升N倍。
|
synchronized只锁定当前链表或红黑二叉树的首节点,这样只要hash不冲突,就不会产生并发,效率又提升N倍。
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user