ConcurrentHashMap 鎖分段機(jī)制

  • Java 5.0 在 java.util.concurrent 包中提供了多種并發(fā)容器類來改進(jìn)同步容器的性能。
  • ConcurrentHashMap 同步容器類是Java 5 增加的一個線程安全的哈希表。對與多線程的操作,介于 HashMap 與 Hashtable 之間。內(nèi)部采用“鎖分段”機(jī)制替代 Hashtable 的獨(dú)占鎖。進(jìn)而提高性能。
  • 此包還提供了設(shè)計用于多線程上下文中的 Collection 實(shí)現(xiàn):
    ConcurrentHashMap、ConcurrentSkipListMap、ConcurrentSkipListSet、CopyOnWriteArrayList 和 CopyOnWriteArraySet。當(dāng)期望許多線程訪問一個給定 collection 時,ConcurrentHashMap 通常優(yōu)于同步的 HashMap,ConcurrentSkipListMap 通常優(yōu)于同步的 TreeMap。當(dāng)期望的讀數(shù)和遍歷遠(yuǎn)遠(yuǎn)大于列表的更新數(shù)時,CopyOnWriteArrayList 優(yōu)于同步的 ArrayList。

JDK1.8以后ConcurrentHashMap由鎖的分段機(jī)制變?yōu)镃AS。

CopyOnWriteArrayList "寫入并復(fù)制" 是個復(fù)合操作,當(dāng)每次寫入時,都會復(fù)制。添加操作比較多時效率較低。并發(fā)迭代操作多時,可以提高效率。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Java SE 基礎(chǔ): 封裝、繼承、多態(tài) 封裝: 概念:就是把對象的屬性和操作(或服務(wù))結(jié)合為一個獨(dú)立的整體,并盡...
    Jayden_Cao閱讀 2,247評論 0 8
  • Java8張圖 11、字符串不變性 12、equals()方法、hashCode()方法的區(qū)別 13、...
    Miley_MOJIE閱讀 3,897評論 0 11
  • 雨3是一條魚閱讀 196評論 0 0
  • 今晚去吹風(fēng)了。想想一個人過得這2年時間里,內(nèi)心更加強(qiáng)大,懂得一個人要好好愛自己。一個不會照顧自己的人通常也不太...
    倩倩Clover閱讀 205評論 4 0
  • 今天聽書《當(dāng)良知沉睡》,雖說沒有聽成一身冷汗,但也相當(dāng)震驚世界上竟然還存在這樣一種人,就是友無良癥的人,無良癥也叫...
    今天安好閱讀 706評論 0 0

友情鏈接更多精彩內(nèi)容