Compartir a través de


Función InterlockedOr (winnt.h)

Realiza una operación OR atómica en los valores LONG especificados. La función impide que más de un subproceso use la misma variable simultáneamente.

Sintaxis

LONG InterlockedOr(
  [in, out] LONG volatile *Destination,
  [in]      LONG          Value
);

Parámetros

[in, out] Destination

Puntero al primer operando. Este valor se reemplazará por el resultado de la operación.

[in] Value

Segundo operando.

Valor devuelto

La función devuelve el valor original 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.

Para los sistemas basados en Intel Itanium y las arquitecturas x64, esta función se implementa mediante el intrínseco del compilador. Para la arquitectura x86, use directamente el _InterlockedOr intrínseco del compilador.

Esta función genera una barrera de memoria completa (o barrera) 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 InterlockedOrAcquire o InterlockedOrRelease en su lugar.

Nota Esta función se admite en sistemas basados en Windows RT.
 

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado winnt.h (incluye Windows.h)

Consulte también

Acceso a variables interbloqueadas

InterlockedOr16

InterlockedOr16Acquire

InterlockedOr16NoFence

InterlockedOr16Release

InterlockedOr64

InterlockedOr64Acquire

InterlockedOr64NoFence

InterlockedOr64Release

InterlockedOr8

InterlockedOr8Acquire

InterlockedOr8NoFence

InterlockedOr8Release

InterlockedOrAcquire

InterlockedOrNoFence

InterlockedOrRelease

Funciones de sincronización