我是Java和stackoverflow的新手,並且正在從Collections Framework開發人員的經驗豐富的人員尋求答案。ConcurrentHashMap和哈希表的區別
我讀到hashTable是線程安全的,concurrentHashMap也是如此,但concurrentHashMap比hashTable快,因爲它將地圖段鎖定到訪問線程。
這是如何在內部工作的?細分市場的規模如何決定?示例:如果concurrentHashMap中有40個條目,並且有3個線程試圖檢索/修改數據,那麼將如何確定這些分段?
任何圖像/解釋/代碼在這將真的很棒。提前致謝。
基本上ConcurrentHashMap具有更好的性能,因爲使用CAS操作實現而不是鎖定會導致許多上下文切換和等待。 – Maxim
這是一篇關於ConcurrentHashMap的優秀文章:http://www.burnison.ca/articles/the-concurrency-of-concurrenthashmap –
謝謝,這真的有幫助。不知道爲什麼它被標記爲重複,因爲另一個問題是「HashMap和HashTable之間的區別」 – Kay