ConcurrentHashMap — потокобезопасная HashMap без блокировки всей таблицы. В Java 8+ использует CAS-операции и синхронизацию на уровне отдельного бакета (Node), а не сегментов как раньше. put() блокирует только один бакет через synchronized на первом узле. get() полностью lock-free — поля val и next у Node volatile. size() — приблизительный, через baseCount + counterCells. Не допускает null-ключей и null-значений (в отличие от HashMap). Это стандарт для многопоточных map.
Как работает ConcurrentHashMap?
Senior
391 просмотровAFK Offer AI
Как реализовать JWT-аутентификацию в Spring?