Предположим, у нас есть 10 потоков, вызывающих следующие коды с разными значениями ключей. аргумент «Функция», предоставленный методу «computeIfAbsent», выполняется параллельно, или «computeIfAbsent» «заблокирует» всю таблицу?
Map map = new ConcurrentHashMap();
map.computeIfAbsent(key, K -> { // long time operation });
Предположим, у нас есть 10 потоков, вызывающих следующие коды с разными значениями ключей. аргумент «Функция», предоставленный методу «computeIfAbsent», выполняется параллельно, или «computeIfAbsent» «заблокирует» всю таблицу?
Map map = new ConcurrentHashMap(); map.computeIfAbsent(key, K -> { // long time operation });
Предположим, у нас есть 10 потоков, вызывающих следующие коды с разными значениями ключей. аргумент «Функция», предоставленный методу «computeIfAbsent», выполняется параллельно, или «computeIfAbsent» «заблокирует» всю таблицу?
Удаление HazelCast из приложения, которому больше не требуется распределенное кэширование.
Однако мне все равно нужно сохранить синхронизированный доступ к карте, аналогичной IMap.
Сначала я хотел заменить IMap на Map и ConcurrentHashMap.
Я создал перечисление, включающее 4 формата адресов. Я знаю, какая страна какой формат использует, и пытаюсь создать HashMap, который будет включать страны в качестве ключа и форматы в качестве значения. Я хочу получить формат адреса страны с...
У меня есть Hashmap, в котором я поддерживаю сопоставление различных типов читателей с соответствующими реализациями классов Java. У меня есть многопоточный Java-сервер, поддерживающий 32 типа читателей.
ConcurrentMap map = new ConcurrentHashMap();
AtomicBoolean isNew = new AtomicBoolean(false);
String result = map.computeIfAbsent( foo , key -> {
isNew.set(true);
return bar ;
});
result = result + common op that occurs on...