Имам ConcurrentHashMap, който попълвам от множество нишки.
private static Map<DataCode, Long> errorMap = new ConcurrentHashMap<DataCode, Long>();
public static void addError(DataCode error) {
if (errorMap.keySet().contains(error)) {
errorMap.put(error, errorMap.get(error) + 1);
} else {
errorMap.put(error, 1L);
}
}
Моят метод по-горе addError
се извиква от множество нишки, които попълват errorMap
. Не съм сигурен дали това е безопасно за нишка? Има ли нещо лошо, което правя тук?
Всяко обяснение защо може да пропуска актуализации ще ми помогне да разбера по-добре.