关于ConcurrentHashMap的快速问题:
public Map<String, String> getA(){
get something from db in a HashMap lets call it x
....
do some operations in on x
....
put the result in ConcurrentHashMap lets call it A
.....
return A
}
有一个ConcurrentHashMap是否有意义,还是应该使用HashMap?
1.HashMap
2.ConsurentHashMap
答案 0 :(得分:2)
如果您使用不同的线程或者其他数据将同时进行操作(多线程代表或类似代理),请使用ConcurrentHashMap
。否则,HashMap
应该这样做(根据您提供的信息)。
基于阅读您的伪代码,我得到的印象是您不在不同的线程上工作,因此HashMap 应该就足够了。
答案 1 :(得分:0)
如果您不想担心此方法的客户在修改/阅读地图时遇到竞争条件,您可以更好地将其包装在Collections.unmodifiableMap()
中。