文档章节

ConcurrentHashMap

百花
 百花
发布于 2017/02/28 19:49
字数 323
阅读 4
收藏 0
  • 支持全面的检索并发
  • 支持高度可指望的更新并发
  • 所有的操作都是ThreadSafe的
  • 检索操作不需要锁
  • 不提供任何锁住全表的支持
  • 在并发安全方面,和HashTable是通用的(在同步机制方面不是)
  • 检索动作是不锁的,所以可能和更新或者删除动作重叠(并发)
  • 检索操作能够检索出大多数的最近更新
  • 检索之前的更新动作,都可以在检索的时候见所属更新后的结果
  • 对于putAll 或者clear 等聚合操作,并发的检索动作只能反映出部分结果
  • 通常情况下,Iterators, Spliterators and Enumerations 只能反映出特定时间点的表状态(数据),或者只能反映出建立 迭代器(等)之前的状态(数据)
  • 不抛出 ConcurrentModificationException
  • 然而,迭代器(Iterators)被设计成每次只有一个线程在使用(one thread at a time)
  • 谨记,一些聚合方法比如size(),isEmpty(),containsValue(),只有在没有其他线程并发更新的情况下在有用(有实际意义),否则这些方法的结果只反映了一个瞬时的状态结果,并不觉有绝对的意义
  • todo 源码doc 看到了136行
  • todo

© 著作权归作者所有

共有 人打赏支持
百花
粉丝 1
博文 67
码字总数 25011
作品 0
海淀
架构师

暂无文章

负载均衡的解决方案有哪些

负载均衡器服务可满足大型组织的需求,支持所有数据中心和跨数据中心高可靠性场景。 本地负载均衡,通过附带或者未附带持久性覆盖选项,Incapsula支持各种负载均衡算法,以优化服务器之间的流...

上树的熊
10分钟前
0
0
Java实现在线打开word文档加盖印章/盖章/签名功能

前言: 我们知道,大型一点的OA办公系统都会有很多在线处理office办公文档的需求。其中有一点也基本绕不开,那就是为文档盖章或添加手写签名来保护文档,让被盖章的文档不再被编辑。 在Java中...

山里的红杏
17分钟前
3
0
js控制输入正负数,小数点后保留两位

//限制数字function clearNoNum(obj){ //修复第一个字符是小数点 的情况. if(obj.value !=''&& obj.value.substr(0,1) == '.'){ obj.value=""; } obj.value ...

一直在成长的程序猿
20分钟前
1
0
动态代理

具体场景 为了使代理类与被代理类对第三方有相同的函数,代理类与被代理类一般实现一个公共的interface,定义如下 public interface Subject { void rent(); void hello(String s)...

wuyiyi
24分钟前
0
0
时间字段

我们看看这几个数据库中(mysql、oracle和sqlserver)如何表示时间 mysql数据库:它们分别是 date、datetime、time、timestamp和year。date :“yyyy-mm-dd”格式表示的日期值 time :“hh:...

DemonsI
26分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部