Встречается на собеседованиях • сегодня
Что такое синхронизация
Синхронизация в Java — это механизм управления доступом нескольких потоков к общим ресурсам, предотвращающий race condition. Основные способы:
- synchronized методы/блоки – только один поток может выполнять synchronized код одновременно.
java
public synchronized void increment() {
counter++;
}-
Lock интерфейсы (ReentrantLock) – более гибкая альтернатива с ручным управлением блокировкой.
-
Atomic переменные – для атомарных операций без блокировок.
Ключевые моменты:
- Синхронизация снижает производительность из-за блокировок
- Важно избегать deadlock (взаимных блокировок)
- Для чтения предпочтительнее volatile или атомарные классы
Пример deadlock:
java
// Поток 1: synchronized(A), затем пытается synchronized(B)
// Поток 2: synchronized(B), затем пытается synchronized(A)
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы