Funzione InterlockedDecrement16 (winnt.h)
Decrementa (diminuisce di uno) il valore della variabile a 16 bit specificata come operazione atomica.
Per operare su valori a 32 bit, usare la funzione InterlockedDecrement .
Per operare su valori a 64 bit, usare la funzione InterlockedDecrement64 .
Sintassi
SHORT InterlockedDecrement16(
[in, out] SHORT volatile *Addend
);
Parametri
[in, out] Addend
Puntatore alla variabile da decrementare.
Valore restituito
La funzione restituisce il valore decrementato risultante.
Commenti
La variabile a cui punta il parametro Addend deve essere allineata su un limite a 16 bit; in caso contrario, questa funzione si comporta in modo imprevedibile nei sistemi x86 multiprocessore e in tutti i sistemi non x86. Vedere _aligned_malloc.
Le funzioni interlocked forniscono un meccanismo semplice per sincronizzare l'accesso a una variabile condivisa da più thread. Questa funzione è atomica rispetto alle chiamate ad altre funzioni interlocked.
Questa funzione viene implementata usando un intrinseco del compilatore laddove possibile. Per altre informazioni, vedere il file di intestazione WinBase.h e _InterlockedDecrement16.
Questa funzione genera una barriera di memoria completa (o limite) per garantire che le operazioni di memoria vengano completate nell'ordine.
Requisiti
Client minimo supportato | Windows 8 [solo app desktop] |
Server minimo supportato | Windows Server 2012 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winnt.h (include Windows.h) |