Funzione InterlockedOr (winnt.h)
Esegue un'operazione OR atomica sui valori LONG specificati. La funzione impedisce a più thread di usare contemporaneamente la stessa variabile.
Sintassi
LONG InterlockedOr(
[in, out] LONG volatile *Destination,
[in] LONG Value
);
Parametri
[in, out] Destination
Puntatore al primo operando. Questo valore verrà sostituito con il risultato dell'operazione.
[in] Value
Secondo operando.
Valore restituito
La funzione restituisce il valore originale del parametro Destination .
Commenti
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.
Per i sistemi basati su Intel Itanium e le architetture x64, questa funzione viene implementata usando l'intrinseco del compilatore. Per l'architettura x86, usare direttamente il compilatore _InterlockedOr .
Questa funzione genera una barriera di memoria completa (o limite) per garantire che le operazioni di memoria vengano completate nell'ordine.
Sistemi basati su Itanium: Per le applicazioni critiche per le prestazioni, usare invece InterlockedOrAcquire o InterlockedOrRelease .
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Windows |
Intestazione | winnt.h (include Windows.h) |