我正在使用线程。我使用了synchronized
的散列图。
我开始知道这是性能开销,所以我在寻找ConcurrentHashMap
。我的逻辑需要通过定义if和else块来检查集合对象中是否存在该值。
示例:
synchronized(hashMap){
String a = Hashmap.get(id);
if(a != null){
update
} else {
adding different key and values
}
}
基于读取值我正在写入hashmap。在这种情况下,我可以将hashmap替换为ConcurrentHashMap
,因为我知道read,即retrival不会锁定。那么它会成为并发问题。