jdk1.8中ConcurrentHashMap的實(shí)現(xiàn)原理
- 拋棄了Segment分段鎖機(jī)制挺峡,利用CAS+synchronized來保證并發(fā)更新的安全蝴韭,底層依然采用數(shù)組+鏈表+紅黑樹的存儲結(jié)構(gòu)魏颓。
- basecount 記錄元素?cái)?shù)量忘瓦,通過CAS更新
- countercells 記錄元素變化個(gè)數(shù),cas操作basecount失敗時(shí)使用押袍。
- 擴(kuò)容的元素復(fù)制可并行進(jìn)行诵冒。