Ключевое слово volatile в области компьютерных технологий используется для описания переменной, изменения в которой сразу же становятся видными для всех потоков. 1 Это происходит, потому что чтение и запись осуществляются напрямую в главной памяти. 1 Такой подход решает вопросы видимости в многопоточных приложениях. 1
В языке C volatile информирует компилятор, что значение переменной может меняться извне. 3 Это может произойти под управлением операционной системы, аппаратных средств или другого потока. 3 Поскольку значение может измениться, компилятор каждый раз загружает его из памяти. 3
В C++ с помощью volatile квалификатора можно предоставить доступ к расположениям памяти, которые используются асинхронными процессами, такими как обработчики прерываний. 5
В Java сочетание static и volatile позволяет добиться того, что каждый экземпляр класса будет видеть последнее значение статического поля. 1