请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

ConcurrentHashMap的问题

今天面试的问了ConcurrentHashMap,我说用了CAS包+Synchronized使锁细化,那边说不对,说的这样跟hashTable有什么区别?说的他不也是使用Synchronized锁吗?然后我问他有什么见解,他也不说,凉凉了,求老师解答,还有为什么使用红黑树,而不使用其他的树,这个问的也挺多。

正在回答 回答被采纳积分+3

1回答

翔仔 2019-07-19 12:16:31

同学好,如课程里面说的,每个面试官的知识储备不同,导致理解不同或者关注点不同,这里感觉他可能有刁难的嫌疑,或者关注的是1.7和1.8版本的区别,或者压根不知道理解错误。我这边的话这样回答是没太大问题的,关键记得还要加上这样做主要是为了降低锁的粒度。用红黑树的原因是因为concurrenthashmap每次插入都会上锁,而红黑树的插入速度较快,并且旋转平衡数据分配较为均匀。我们没办法去迎合所有面试官的需求,但求自己探知并了解了,工作机会很多 不要气馁。

0 回复 有任何疑惑可以回复我~
  • 提问者 mjka5632 #1
    好的,谢谢老师。蚂蚁金服面试的,还问我从哪了解到的,我说的看源码,他说他面试的都这么回答,问我出处是哪…我让他说他的理解他也不说…
    回复 有任何疑惑可以回复我~ 2019-07-19 12:24:40
  • 翔仔 回复 提问者 mjka5632 #2
    估计故意刁难的成分大,同学可以在事后直接看下concurrenthashmap的源码,一切以源码为主,然后再去虐下一家的面试官:)
    回复 有任何疑惑可以回复我~ 2019-07-19 23:56:35
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信