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 .
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Windows |
Cabeçalho | winnt.h (inclua Windows.h) |