Назад к вопросам
СБЕР
Альфа-Банк
БАРС групп
OZON
Junior — Middle
107
Какова роль и назначение ключевого слова volatile в языке программирования?
Компании, где спрашивали
Stroki
Firecode
eRaga Infosystem
Ответ от нейросети
sobes.tech AI
Ключевое слово volatile в Java используется для обозначения переменной, значение которой может изменяться в разных потоках. Оно гарантирует, что чтение и запись этой переменной будут происходить напрямую из основной памяти, а не из кэша процессора, обеспечивая видимость изменений между потоками.
Это предотвращает ситуации, когда один поток не видит обновления переменной, сделанные другим потоком. Однако volatile не обеспечивает атомарность операций, поэтому для сложных операций синхронизация все равно нужна.
Пример:
volatile boolean flag = false;
// Поток 1
flag = true;
// Поток 2
if (flag) {
// увидит обновленное значение
}