Встречается на 2% собеседований по Java

Работал ли с ConcurrentHashMap

Да, работал. ConcurrentHashMap — потокобезопасная реализация Map, использует сегментирование (блокировка на уровне сегментов/бакетов) для высокой производительности при многопоточном доступе.

Особенности:

  • Не блокирует всю таблицу при операциях
  • Поддерживает fail-safe итераторы
  • Не гарантирует атомарность составных операций (например, putIfAbsent + get)

Пример:

java
ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<>();
map.put("key1", 1);

// Потокобезопасное обновление
map.compute("key1", (k, v) -> v + 1); 

// Атомарная проверка + вставка
map.putIfAbsent("key2", 2); 

Для сложных атомарных операций лучше использовать compute(), merge() или ConcurrentHashMap в сочетании с Atomic-классами.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы