Volatile è un qualificatore utilizzato per definire un'area di memorizzazione dei dati (oggetto, campo, variabile, parametro) che "può cambiare da solo", impedendo così alcune ottimizzazioni del generatore di codice. In alcune ma non in tutte le lingue che riconoscono questo qualificatore, l'accesso a tali dati è thread-safe.