Senior
À quoi sert le mot-clé volatile?
sobes.tech IA
Réponse de l'IA
Ключевое слово volatile в Java используется для обозначения переменной, значение которой может изменяться в разных потоках. Оно гарантирует:
- Видимость изменений: когда один поток изменяет значение volatile-переменной, другие потоки сразу видят это изменение.
- Запрет оптимизаций компилятора и процессора: операции с volatile переменными не кэшируются и не переупорядочиваются, что предотвращает проблемы с синхронизацией.
Пример:
volatile boolean flag = false;
// Поток 1
flag = true;
// Поток 2
if (flag) {
// увидит обновленное значение
}
Без volatile поток 2 может не увидеть обновление из-за кэширования или переупорядочивания инструкций.