HashMap 和 ConcurrentHashMap 的区别

  • 线程安全性不同, HashMap 是线程不安全的, ConcurrentHashMap 是线程安全的.
  • ConcurrentHashMap 采用锁分段技术, 将整个 Hash 桶进行了分段 segment, 也就是将这个大的数组分成了几个小的片段 segment, 而且每个 segment 片段上面都有锁的存在, 那么在插入元素的时候就需要先找到应该插入到哪一个 segment 片段, 然后再在这个片段上进行插入, 而且这里还需要获取 segment 锁.
  • ConcurrentHashMap 相比 HashTable 让锁的粒度更精细一些, 并发性能更好.
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容