ConcurrentHashMap源碼解析

出現原因 1hashmap在進行put時,會嘗試擴容,擴容時,會使用rehash()這個函數,然後在重新將以前的節點前移到新的表中,可能會出現循環列表,a->b,b->a while(a.next!=null) a=b;原因是線程併發修改的導致的。使得cpu一直在空轉,浪費了資源。 2爲什麼不是用hashtable,hashtable的同步方法之間是互斥的,意思是 這個hashtable對這個對象
相關文章
相關標籤/搜索