Compartilhar via


Função InterlockedOr (winnt.h)

Executa uma operação OR atômica nos valores LONG especificados. A função impede que mais de um thread use a mesma variável simultaneamente.

Sintaxe

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

Parâmetros

[in, out] Destination

Um ponteiro para o primeiro operando. Esse valor será substituído pelo resultado da operação.

[in] Value

O segundo operando.

Retornar valor

A função retorna o valor original do parâmetro Destination .

Comentários

As funções interligadas fornecem um mecanismo simples para sincronizar o acesso a uma variável que é compartilhada por vários threads. Essa função é atômica em relação a chamadas para outras funções interligadas.

Para os sistemas baseados em Intel Itanium e arquiteturas x64, essa função é implementada usando o compilador intrínseco. Para a arquitetura x86, use o _InterlockedOr compilador intrínseco diretamente.

Essa função gera uma barreira de memória completa (ou cerca) para garantir que as operações de memória sejam concluídas em ordem.

Sistemas baseados em Itanium: Para aplicativos críticos ao desempenho, use InterlockedOrAcquire ou InterlockedOrRelease .

Nota Essa função tem suporte em sistemas baseados em Windows RT.
 

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho winnt.h (inclua Windows.h)

Confira também

Acesso à variável intertravada

InterlockedOr16

InterlockedOr16Acquire

InterlockedOr16NoFence

InterlockedOr16Release

InterlockedOr64

InterlockedOr64Acquire

InterlockedOr64NoFence

InterlockedOr64Release

InterlockedOr8

InterlockedOr8Acquire

InterlockedOr8NoFence

InterlockedOr8Release

InterlockedOrAcquire

InterlockedOrNoFence

InterlockedOrRelease

Funções de sincronização