HandleTalbe::HandleTable()

LRUHandle* HandleTalbe::Insert(LRUHandle* h)
1. 插入元素
情況1:對于原始的HandleTable中沒有元素
情況2:對于待插入的HandleTable中通過FindPointer找到具有相同的key或hash的節點
2. 擴容,重新計算hash并調整節點
插入4個元素後的HandleTable記憶體結構示意圖:
擴容:
重新計算hash及調整結點:
即将原來list_中的所有節點,根據目前桶的個數(new_length)及其hash值重新計算放置到new_list中的桶索引,下圖中标紅的語句。
調整後的HandleTable記憶體結構示意圖: