占小狼老生常談,HashMap死循環(huán)
詳細分析了HashMap多線程環(huán)境下的問題。
一點感悟:
hashmap多線程擴容,發(fā)生死循環(huán)钠右。需要滿足以下幾點。
1.新建立的鏈表跟原鏈表順序相反
2.線程A將構(gòu)造出來的逆向鏈表刷新到主內(nèi)存
3.線程B重新從主內(nèi)存獲取到新的鏈表引用
jdk8已經(jīng)修復(fù)這個問題忘蟹,新構(gòu)造出來的鏈表順序與原鏈表相同
占小狼老生常談,HashMap死循環(huán)
詳細分析了HashMap多線程環(huán)境下的問題。
一點感悟:
hashmap多線程擴容,發(fā)生死循環(huán)钠右。需要滿足以下幾點。
1.新建立的鏈表跟原鏈表順序相反
2.線程A將構(gòu)造出來的逆向鏈表刷新到主內(nèi)存
3.線程B重新從主內(nèi)存獲取到新的鏈表引用
jdk8已經(jīng)修復(fù)這個問題忘蟹,新構(gòu)造出來的鏈表順序與原鏈表相同