首页 > 编程语言 > 详细

Java ConcurrentHashMap分析

时间:2014-10-09 14:35:07      阅读:279      评论:0      收藏:0      [点我收藏+]
ConcurrentHashMap就是HashMap的线程安全版本,值得一提的是,ConcurrentHashMap并没有用一个锁来保护整个哈希区,而是使用了16个锁,将哈希区分成了16个桶,每一个锁控制一个桶,即锁分段,这样子可以更加细粒度的锁对象,所以最大提供16个并发的读写,来提高吞吐量。


但是这种技术也带来了不好的地方,比如有些方法需要扫描这个哈希区,如size()方法或者是containsValue()方法,这样子将使用多个锁而不是一个锁来实现,而当需要多把锁的时候,就需要某些技术,如按顺序上锁来避免死锁。

原文:http://blog.csdn.net/hongchangfirst/article/details/39667989

作者:hongchangfirst

hongchangfirst的主页:http://blog.csdn.net/hongchangfirst



Java ConcurrentHashMap分析

原文:http://blog.csdn.net/hongchangfirst/article/details/39667989

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!