Fonction InterlockedExchange8 (winnt.h)
Définit une variable 8 bits sur la valeur spécifiée en tant qu’opération atomique.
Pour fonctionner sur une variable de pointeur, utilisez la fonction InterlockedExchangePointer .
Pour fonctionner sur une variable 16 bits, utilisez la fonction InterlockedExchange16 .
Pour fonctionner sur une variable 32 bits, utilisez la fonction InterlockedExchange .
Pour fonctionner sur une variable 64 bits, utilisez la fonction InterlockedExchange64 .
Syntaxe
CHAR InterlockedExchange8(
[in, out] CHAR volatile *Target,
[in] CHAR Value
);
Paramètres
[in, out] Target
Pointeur vers la valeur à échanger. La fonction définit cette variable sur Value et retourne sa valeur précédente.
[in] Value
Valeur à échanger avec la valeur pointée par Target.
Valeur retournée
La fonction retourne la valeur initiale du paramètre Target .
Remarques
Les fonctions verrouillées fournissent un mécanisme simple pour synchroniser l’accès à une variable partagée par plusieurs threads. Cette fonction est atomique par rapport aux appels à d’autres fonctions verrouillées.
Cette fonction est implémentée à l’aide d’une intrinsèque du compilateur dans la mesure du possible. Pour plus d’informations, consultez le fichier d’en-tête WinBase.h et _InterlockedExchange8.
Cette fonction génère une barrière de mémoire complète (ou clôture) pour s’assurer que les opérations de mémoire sont effectuées dans l’ordre.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 8 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2012 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | winnt.h (inclure Windows.h) |
Voir aussi
InterlockedExchangePointerAcquire