校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > java语言 > equals、hashCode()
题目

什么是强一致性和弱一致性呢?

解答

get方法是弱一致的,是什么含义?

可能你期望往ConcurrentHashMap底层数据结构中加入一个元素后,立马能对get可见,但ConcurrentHashMap并不能如你所愿。
换句话说,put操作将一个元素加入到底层数据结构后,get可能在某段时间内还看不到这个元素,若不考虑内存模型,单从代码逻辑上来看,却是应该可以看得到的。

put方法我们只需关注Segment#put,get方法只需关注Segment#get。

在继续之前,先要说明一下Segment里有两个volatile变量:
counttable
HashEntry里有一个volatile变量:value

C 0条回复 评论

帖子还没人回复快来抢沙发