volátil es un modificador de variable que garantiza la visibilidad de los cambios entre subprocesos. Sin él, cada subproceso puede almacenar en caché el valor de una variable en un registro de la CPU o en la caché L1/L2 y nunca ver los cambios realizados por otro subproceso. volátil desactiva el almacenamiento en caché y garantiza lecturas desde la memoria principal.
El problema de la visibilidad sin volátiles