Встречается на собеседованиях • сегодня

Для чего нужен volatile в многопоточности

volatile гарантирует видимость изменений переменной для всех потоков и предотвращает её кэширование в регистрах процессора.

Когда использовать:

  • Когда переменная изменяется одним потоком, а читается другими.
  • Когда не требуется атомарность операций (например, volatile не подходит для i++).

Пример:

java
class Shared {
    volatile boolean flag = false;
}

// Поток 1
shared.flag = true;

// Поток 2
while (!shared.flag) {
    // Ждём изменения флага
}

Важно: volatile не заменяет synchronized для сложных операций!

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы