Встречается на собеседованиях • сегодня
Что такое синхронизация потоков
Синхронизация потоков — это механизм контроля доступа нескольких потоков к общим ресурсам, предотвращающий race condition (состояние гонки). В Java для этого используются ключевое слово synchronized, блокировки (Lock), атомарные классы (AtomicInteger и др.) и другие средства.
Пример с synchronized:
java
public class Counter {
private int count = 0;
public synchronized void increment() {
count++;
}
public int getCount() {
return count;
}
}Здесь метод increment() синхронизирован, поэтому только один поток может выполнить его в один момент времени.
Альтернатива с ReentrantLock:
java
private Lock lock = new ReentrantLock();
public void increment() {
lock.lock();
try {
count++;
} finally {
lock.unlock();
}
}Синхронизация гарантирует целостность данных, но может снижать производительность из-за блокировок.

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