Sobes.tech
Назад к вопросам
Junior — Middle
64

Какое поведение обеспечивает использование ключевого слова volatile в языке программирования?

Компании, где спрашивали
СБЕРСБЕР

Ответ от нейросети

sobes.tech AI

Ключевое слово volatile в Java используется для обозначения переменной, значение которой может изменяться в любой момент из разных потоков. Оно гарантирует, что:

  • Чтение и запись переменной будут происходить напрямую из основной памяти, а не из кэша процессора.
  • Изменения переменной одним потоком сразу становятся видимыми для других потоков.

Это помогает избежать проблем с кэшированием и обеспечивает корректную работу с переменными в многопоточной среде без использования более тяжелых механизмов синхронизации.

Пример:

volatile boolean flag = false;

// Один поток меняет flag
flag = true;

// Другой поток видит обновленное значение flag без задержек
if (flag) {
    // выполнить действия
}