Fonction InterlockedDecrement16 (winnt.h)
Décrémente (diminue d’un) la valeur de la variable 16 bits spécifiée en tant qu’opération atomique.
Pour fonctionner sur des valeurs 32 bits, utilisez la fonction InterlockedDecrement .
Pour fonctionner sur des valeurs 64 bits, utilisez la fonction InterlockedDecrement64 .
Syntaxe
SHORT InterlockedDecrement16(
[in, out] SHORT volatile *Addend
);
Paramètres
[in, out] Addend
Pointeur vers la variable à décrémenter.
Valeur retournée
La fonction retourne la valeur décrémentée résultante.
Remarques
La variable pointée vers par le paramètre Addend doit être alignée sur une limite 16 bits ; sinon, cette fonction se comportera de manière imprévisible sur les systèmes multiprocesseurs x86 et tous les systèmes non x86. Voir _aligned_malloc.
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 _InterlockedDecrement16.
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
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) |