Junior — Middle
Que signifie le mot-clé volatile en programmation Java?
sobes.tech IA
Réponse de l'IA
En Java, le mot-clé volatile est utilisé pour indiquer qu'une variable peut être modifiée par plusieurs threads simultanément. Il garantit que la lecture et l'écriture de cette variable se font directement dans la mémoire principale, et non dans le cache du processeur, assurant ainsi la visibilité des changements entre threads.
Sans volatile, un thread peut voir une valeur obsolète de la variable, car les modifications peuvent rester dans le cache local d'un autre thread.
Exemple :
public class Counter {
private volatile int count = 0;
public void increment() {
count++; // opération non atomique, mais volatile garantit la visibilité
}
public int getCount() {
return count;
}
}
Important : volatile ne garantit pas l'atomicité des opérations, il est donc préférable d'utiliser la synchronisation ou des classes atomiques de java.util.concurrent.atomic pour des modifications complexes.