ConcurrentHashMap的putAll方法可以保证put的所有元素在同一个元子操作中吗?

1、ConcurrentHashMap的putAll方法可以保证put的所有元素在同一个元子操作中吗?2、如果第1条可以保证,是否有同样可以保证元子性的removeAll... 1、ConcurrentHashMap的putAll方法可以保证put的所有元素在同一个元子操作中吗?
2、如果第1条可以保证,是否有同样可以保证元子性的removeAll的操作?如何操作
3、如果1条件不成立,如何保证元子性的同时提升读写并发?
展开
 我来答
千古人文
2016-05-17 · TA获得超过388个赞
知道小有建树答主
回答量:233
采纳率:93%
帮助的人:88.2万
展开全部
1,map的putAll和clear不可以保证在所有的元素在同一个元子操作中。ConcurrentHashMap 将 map中数据通过hash 散列到32个Segment 中,Segment 是 ConcurrentHashMap 一个内部类,他继承了ReentrantLock ,ConcurrentHashMap 将锁进行分化到每一个Segment中,只有对同一个Segment 元素的读写时 才会阻塞,否则是无阻塞的,这样就大大的提高了并发的执行速度。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式