Fonction InterlockedXor
Effectue un XOR atomique sur la valeur.
Syntaxe
void InterlockedXor(
in UINT dest,
in UINT value,
out UINT original_value
);
Paramètres
-
dest [in]
-
Type : UINT
Adresse de destination.
-
value [in]
-
Type : UINT
Valeur d'entrée.
-
original_value [out]
-
Type : UINT
Valeur d'origine.
Valeur renvoyée
Cette fonction ne retourne pas de valeur.
Notes
Cette opération ne peut être effectuée que sur les ressources de type INT ou UINT et les variables de mémoire partagée. Il existe trois utilisations possibles pour cette fonction. La première est lorsque R est un type de variable de mémoire partagée. Dans ce cas, la fonction effectue un XOR atomique avec la valeur du registre de mémoire partagée référencée par dest. Le deuxième scénario est quand R est un type de variable de ressource. Dans ce scénario, la fonction effectue un XOR atomique avec la valeur de l’emplacement de ressource référencé par dest. Enfin, le troisième scénario est lorsque R est un type de variable local. Dans ce scénario, la fonction réduit à un XOR des valeurs de dest et value. Le résultat de l’opération remplace la valeur dans dest. La fonction surchargée a une variable de sortie supplémentaire qui sera définie sur la valeur d’origine de dest. Cette opération surchargée n’est disponible que lorsque R est lisible et accessible en écriture.
Cette fonction est prise en charge dans les types de nuanceurs suivants :
VS | HS | Source de données | GS | PS | CS |
---|---|---|---|---|---|
x | x | x | x | x | x |
Voir aussi