JDK1.7的HashMap鏈表死循環分析

在JDK1.7及以前的版本,如果在併發環境中使用HashMap保存數據,有可能會產生死循環的問題,造成cpu的使用率飆升。產生這個問題是因爲JDK1.7及以前的版本中,HashMap擴容採用的是頭插入,1.8做的改進是採用尾插法,所以不會造成死循環的問題。 首先,來看1.7擴容的代碼: //進行擴容時方法 void resize(int newCapacity) { Ent
相關文章
相關標籤/搜索