Sobes.tech
Junior — Middle

¿En qué casos se recomienda usar la palabra clave volatile en Java?

sobes.tech AI

Respuesta de la IA

La palabra clave volatile en Java se aplica a variables que pueden cambiar en múltiples hilos simultáneamente. Garantiza que:

  • La lectura de la variable siempre se realizará desde la memoria principal, no desde la caché del hilo.
  • La escritura en la variable se vuelve inmediatamente visible para otros hilos.

Se recomienda usar volatile cuando:

  • La variable se utiliza para banderas o estados que son leídos y escritos por diferentes hilos.
  • No es necesaria una sincronización completa, pero se requiere garantizar la visibilidad de los cambios.

Ejemplo:

public class Flag {
    private volatile boolean active = false;

    public void activate() {
        active = true; // el cambio será visible inmediatamente para otros hilos
    }

    public boolean isActive() {
        return active; // siempre valor actualizado
    }
}

Importante: volatile no garantiza la atomicidad de operaciones complejas, solo la visibilidad de los cambios.