Compartilhar via


Função InterlockedDecrement16 (winnt.h)

Diminui (diminui em um) o valor da variável de 16 bits especificada como uma operação atômica.

Para operar com valores de 32 bits, use a função InterlockedDecrement .

Para operar com valores de 64 bits, use a função InterlockedDecrement64 .

Sintaxe

SHORT InterlockedDecrement16(
  [in, out] SHORT volatile *Addend
);

Parâmetros

[in, out] Addend

Um ponteiro para a variável a ser decrementada.

Valor retornado

A função retorna o valor decimado resultante.

Comentários

A variável apontada pelo parâmetro Addend deve ser alinhada em um limite de 16 bits; caso contrário, essa função se comportará de forma imprevisível em sistemas x86 multiprocessadores e em sistemas não x86. Consulte _aligned_malloc.

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.

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 _InterlockedDecrement16.

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.

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

Requisitos

   
Cliente mínimo com suporte Windows 8 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2012 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho winnt.h (inclua Windows.h)

Confira também

Acesso à variável intertravada

Interlockeddecrement

InterlockedDecrement16Acquire

InterlockedDecrement16NoFence

InterlockedDecrement16Release

InterlockedDecrement64

InterlockedDecrementAcquire

InterlockedDecrementAcquire64

InterlockedDecrementNoFence

InterlockedDecrementNoFence64

InterlockedDecrementRelease

InterlockedDecrementRelease64

Funções de sincronização