Встречается на собеседованиях • сегодня
В чем разница между synchronized и volatile
synchronized обеспечивает атомарность и видимость изменений для всех потоков, блокируя доступ к блоку кода или методу. volatile гарантирует только видимость изменений переменной между потоками, но не атомарность операций.
Пример с volatile:
java
private volatile boolean flag = true;
// Поток 1
flag = false;
// Поток 2 сразу увидит изменение flagПример с synchronized:
java
private int counter = 0;
public synchronized void increment() {
counter++; // атомарная операция
}Ключевые различия:
synchronizedработает с блоками кода,volatile- с отдельными переменнымиsynchronizedвызывает блокировки,volatile- нетvolatileне подходит для составных операций (например, i++)

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