學(xué)習(xí)完整課程請(qǐng)移步 互聯(lián)網(wǎng) Java 全棧工程師
ConcurrentHashMap 采用了非常精妙的"分段鎖"策略,ConcurrentHashMap 的主干是個(gè) Segment 數(shù)組。Segment 繼承了 ReentrantLock,所以它就是一種可重入鎖(ReentrantLock)。在 ConcurrentHashMap,一個(gè) Segment 就是一個(gè)子哈希表,Segment 里維護(hù)了一個(gè) HashEntry 數(shù)組,并發(fā)環(huán)境下,對(duì)于不同 Segment 的數(shù)據(jù)進(jìn)行操作是不用考慮鎖競(jìng)爭(zhēng)的。