função _interlockedbittestandset (winnt.h)
Testa o bit especificado do valor de LONG especificado e o define como 1. A operação é atômica.
Sintaxe
BOOLEAN _interlockedbittestandset(
[in] LONG volatile *Base,
[in] LONG Offset
);
Parâmetros
[in] Base
Um ponteiro para uma variável.
[in] Offset
A posição do bit a ser testada. O deslocamento é da posição de bit menos significativa, com zero testando o bit menos significativo e 31 testando o bit mais significativo.
Valor de retorno
O valor do bit especificado.
Observações
As funções intertravadas fornecem um mecanismo simples para sincronizar o acesso a uma variável compartilhada por vários threads. Essa função é atômica em relação a chamadas para outras funções intertravadas.
Essa função é implementada usando um compilador intrínseco sempre que possível. Para obter mais informações, consulte o arquivo de cabeçalho WinBase.h e _interlockedbittestandset.
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.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino |
Windows |
cabeçalho | winnt.h (inclua Windows.h) |
Consulte também
de acesso de variável intertravada
InterlockedBitTestAndResetAcquire
InterlockedBitTestAndResetRelease
InterlockedBitTestAndSetAcquire