Función InterlockedExchange16 (winnt.h)
Establece una variable de 16 bits en el valor especificado como una operación atómica.
Para funcionar en una variable de 32 bits, use la función InterlockedExchange .
Para funcionar en una variable de 64 bits, use la función InterlockedExchange64 .
Sintaxis
SHORT InterlockedExchange16(
[in, out] SHORT volatile *Destination,
[in] SHORT ExChange
);
Parámetros
[in, out] Destination
Puntero al valor que se va a intercambiar. La función establece esta variable en ExChange y devuelve su valor anterior.
[in] ExChange
Valor que se va a intercambiar con el valor al que apunta Destination.
Valor devuelto
La función devuelve el valor inicial del parámetro Destination .
Comentarios
Las funciones interbloqueadas proporcionan un mecanismo sencillo para sincronizar el acceso a una variable compartida por varios subprocesos. Esta función es atómica con respecto a las llamadas a otras funciones interbloqueadas.
Esta función se implementa mediante un intrínseco del compilador siempre que sea posible. Para obtener más información, vea el archivo de encabezado WinBase.h y _InterlockedExchange16.
Esta función genera una barrera de memoria completa (o cerca) para asegurarse de que las operaciones de memoria se completan en orden.
Sistemas basados en Itanium: En el caso de las aplicaciones críticas para el rendimiento, use InterlockedExchangeAcquire64 en su lugar.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [aplicaciones de escritorio | aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | winnt.h (incluya Windows.h) |
Consulte también
Acceso a variables interbloqueados
InterlockedExchangePointerAcquire