当写入需要基于工作的读取时,我是否需要使用ConcurrentHashMap

时间:2018-04-02 14:13:45

标签: java performance

我正在使用线程。我使用了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不会锁定。那么它会成为并发问题。

0 个答案:

没有答案