Función InterlockedOr

Realiza un OR atómico en el valor.

Sintaxis

void InterlockedOr(
  in  UINT dest,
  in  UINT value,
  out UINT original_value
);

Parámetros

dest [in]

Tipo: UINT

Dirección de destino.

value [in]

Tipo: UINT

Valor de entrada.

original_value [out]

Tipo: UINT

El valor original.

Valor devuelto

Nada

Comentarios

Esta operación solo se puede realizar en recursos con tipo INT o UINT y en variables de memoria compartidas. Hay tres posibles usos para esta función. La primera es cuando R es un tipo de variable de memoria compartida. En este caso, la función realiza un OR atómico con el valor del registro de memoria compartida al que hace referencia dest. El segundo escenario es cuando R es un tipo de variable de recurso. En este escenario, la función realiza una operación OR atómica con el valor de la ubicación del recurso a la que hace referencia dest. Por último, el tercer escenario es cuando R es un tipo de variable local. En este escenario, la función se reduce a un OR con los valores dest y value. El resultado de la operación reemplaza el valor de dest. La función sobrecargada tiene una variable de salida adicional, que se establecerá en el valor original dest. Esta operación sobrecargada solo está disponible cuando R es legible y grabable.

Esta función se admite en los siguientes tipos de sombreadores:

VS HS DS GS PS CS
x x x x x x

 

Consulte también

RWByteAddressBuffer

Modelo de sombreador 5