HashMap
线程不安全
线程不安全具体是指:多个线程同时访问,并且至少有一个线程修改了HashMap的数据结构,则需要进行线程同步。修改HashMap的数据结构是指添加或者删除一个或多个的映射,而如果仅更改与实例已包含的键关联的值不是数据结构修改。
可以采用如下方法生成线程安全的HashMap:
Collections.synchronizedMap(new HashMap(...));
或者采用:ConcurrentHashMap
而如果HashMap生成后不再操作,则可以在创建完,设置完数据后调
public Map<String, MyObject> load() {
Map<String, MyObjecgt> map = new HashMap(...);
map.put(...);
...
return Collections.unmodifiableMap(map);
}
JDK源码分析之hashmap就这么简单理解
Java并发编程笔记之ConcurrentHashMap原理探究
[Java的ConcurrentHashMap]
(https://www.jianshu.com/p/5dbaa6707017)
网友评论