ConcurrentHashMap的问题

来源:10-5 ConcurrentHashMap

mjka5632

2019-07-18

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

写回答

1回答

翔仔

2019-07-19

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

0
2
翔仔
回复
mjka5632
估计故意刁难的成分大,同学可以在事后直接看下concurrenthashmap的源码,一切以源码为主,然后再去虐下一家的面试官:)
2019-07-19
共2条回复

剑指Java面试-Offer直通车 百度资深面试官授课

招聘季即将到来,让百度资深面试官来为你的高薪Offer保驾护航

8427 学习 · 1870 问题

查看课程