何時使用ConcurrentHashMap

CHM適用於讀者數量超過寫者時,性能

  • 當寫者數量大於等於讀者時,CHM的性能是低於Hashtable和synchronized Map的。
  • 這是由於當鎖住了整個Map時,讀操做要等待對同一部分執行寫操做的線程結束。

CHM適用於作cache線程

  • 在程序啓動時初始化,以後能夠被多個請求線程訪問。
  • 正如Javadoc說明的那樣,CHM是HashTable一個很好的替代,
    • 但要記住,CHM的比HashTable的同步性稍弱。
相關文章
相關標籤/搜索