Встречается на собеседованиях • сегодня
Какие знаешь альтернативы у synchronized
В Java есть несколько альтернатив synchronized для управления многопоточностью:
- ReentrantLock – более гибкая блокировка с поддержкой таймаутов и прерываний:
java
Lock lock = new ReentrantLock();
lock.lock();
try {
// критическая секция
} finally {
lock.unlock();
}- ReadWriteLock – разделяет блокировки на чтение (множественный доступ) и запись (эксклюзивный):
java
ReadWriteLock rwLock = new ReentrantReadWriteLock();
rwLock.readLock().lock(); // для чтения
rwLock.writeLock().lock(); // для записи-
Atomic-классы (AtomicInteger, AtomicReference и др.) – для атомарных операций без блокировок.
-
Semaphore – ограничивает количество потоков, которые могут войти в критическую секцию.
-
Concurrent коллекции (ConcurrentHashMap, CopyOnWriteArrayList) – потокобезопасные реализации.
-
StampedLock (Java 8+) – оптимизированная блокировка с поддержкой оптимистичного чтения.
Каждый вариант имеет свои преимущества в зависимости от сценария использования (производительность, гибкость, простота).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы