HashMap: 线程不安全,链表结构,效率高;
Hashtable : 线程安全,但效率低,因为是Hashtable是使用synchronized的,所有线程竞争同一把锁;
Synchronized Map: 线程安全,但效率低,一次性锁住整张表来保证线程安全,所以每次只能有一个线程来访问map。
ConcurrentHashMap:线程安全而且效率高,因为它包含一个segment数组,将数据分段存储,给每一段数据配一把锁。
在理想状态下,ConcurrentHashMap 可支持16个线程执行并发写操作,及任意数量线程的读操作。
以下三种方式:
- Hashtable
- ConcurrentHashMap
- Synchronized Map
原文地址:https://www.cnblogs.com/lgg20/p/12321427.html
时间: 2024-10-10 17:26:59