我是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