Java面试 - HashMap的底层实现,之后会问ConcurrentHashMap的底层实现

 2023-09-06 阅读 15 评论 0

摘要:HashMap的底层实现 ConcurrentHashMap的底层实现 HashMap 线程不安全 ,底层实现,哈希桶(Node链表、数组),每个Node的key,即Hash值Key,Value可能是个线性表,也可能是个红黑树,如果产生Hash碰撞,同一Ke

HashMap的底层实现 ConcurrentHashMap的底层实现

 

HashMap 线程不安全  ,底层实现,哈希桶(Node链表、数组),每个Node的key,即Hash值Key,Value可能是个线性表,也可能是个红黑树,如果产生Hash碰撞,同一Key值下,有多个数据,数据个数小于8个,则Value为线性表,如果大于8个,则转化为红黑二叉树,这样查询、遍历效率高些。

ConcurrentHashMap 线程安全  ,采用锁分段技术,将整个Hash桶分成多个segment,每个segment都上了锁。在同一个上锁的segment部分的多线程并发操作是线程安全的;不同segment上的多线程并发操作不是线程安全的,因为锁不是同一个。
 

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/5/4170.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息