Share via


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.

Note Cette fonction est prise en charge sur les systèmes basés sur Windows RT.
 

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)

Voir aussi

Accès variable verrouillé

InterlockedDecrement

InterlockedDecrement16Acquire

InterlockedDecrement16NoFence

InterlockedDecrement16Release

InterlockedDecrement64

InterlockedDecrementAcquire

InterlockedDecrementAcquire64

InterlockedDecrementNoFence

InterlockedDecrementNoFence64

InterlockedDecrementRelease

InterlockedDecrementRelease64

Fonctions de synchronisation