0

Comment les variables atomiques de Java comme AtomicInteger fonctionnent-elles en interne pour obtenir une exclusion/atomicité mutuelle?Implémentation native/interne des variables atomiques Java

Y a-t-il un verrouillage impliqué au niveau de l'instruction de la machine qui donne de meilleures performances? Une instruction de niveau machine atomique elle-même le fait par rapport à l'ensemble d'instructions machine où la valeur est copiée de la mémoire principale vers registre/cache et opération effectuée sur ce registre puis stockée dans la mémoire principale.

Répondre

0

afaik il profite des instructions CPU déjà disponibles pour ce type de primitives. Ou au moins, dans les processeurs où ces instructions existent (ne sais pas si tout, cela fait partie de la substance portable jvm). Dans ceux qui ne le font pas, une sorte de verrouillage pourrait être utilisé.

Je suppose que vous avez déjà fait, mais juste au cas où cela aide: here, vous pouvez lire quelques brefs détails.