Funções de sincronização

As funções a seguir são usadas na sincronização.

Funções assíncronas

Função assíncrona Descrição
APCProc Uma função de retorno de chamada definida pelo aplicativo usada com a função QueueUserAPC .
GetOverlappedResult Recupera os resultados de uma operação sobreposta.
GetOverlappedResultEx Recupera os resultados de uma operação sobreposta em um intervalo de tempo limite especificado.
QueueUserAPC Adiciona um objeto APC (chamada de procedimento assíncrono) no modo de usuário à fila APC do thread especificado.

 

Variável de condição e funções de bloqueio SRW

Variável de condição e função de bloqueio SRW Descrição
AcquireSRWLockExclusive Adquire um bloqueio de leitor/gravador fino (SRW) no modo exclusivo.
AcquireSRWLockShared Adquire um bloqueio de leitor/gravador fino (SRW) no modo compartilhado.
InitializeConditionVariable Inicializa uma variável de condição.
InitializeSRWLock Inicializar um bloqueio de leitor/gravador fino (SRW).
ReleaseSRWLockExclusive Libera um bloqueio de leitor/gravador fino (SRW) que foi adquirido no modo exclusivo.
ReleaseSRWLockShared Libera um bloqueio de leitor/gravador fino (SRW) que foi adquirido no modo compartilhado.
SleepConditionVariableCS Dorme na variável de condição especificada e libera a seção crítica especificada como uma operação atômica.
SleepConditionVariableSRW Dorme na variável de condição especificada e libera o bloqueio especificado como uma operação atômica.
TryAcquireSRWLockExclusive Tenta adquirir um bloqueio de leitor/gravador fino (SRW) no modo exclusivo. Se a chamada for bem-sucedida, o thread de chamada assumirá a propriedade do bloqueio.
TryAcquireSRWLockShared Tenta adquirir um bloqueio de leitor/gravador fino (SRW) no modo compartilhado. Se a chamada for bem-sucedida, o thread de chamada assumirá a propriedade do bloqueio.
WakeAllConditionVariable Ative todos os threads aguardando a variável de condição especificada.
WakeConditionVariable Ative um único thread aguardando a variável de condição especificada.

 

Funções de seção críticas

Função de seção crítica Descrição
Deletecriticalsection Libera todos os recursos usados por um objeto de seção crítica sem proprietário.
Entercriticalsection Aguarda a propriedade do objeto de seção crítica especificado.
Initializecriticalsection Inicializa um objeto de seção crítico.
InitializeCriticalSectionAndSpinCount Inicializa um objeto de seção crítico e define a contagem de rotação para a seção crítica.
InitializeCriticalSectionEx Inicializa um objeto de seção crítico com uma contagem de rotação e sinalizadores opcionais.
Leavecriticalsection Libera a propriedade do objeto de seção crítico especificado.
SetCriticalSectionSpinCount Define a contagem de rotação para a seção crítica especificada.
TryEnterCriticalSection Tenta inserir uma seção crítica sem bloquear.

 

Funções de evento

Função de evento Descrição
CreateEvent Cria ou abre um objeto de evento nomeado ou sem nome.
CreateEventEx Cria ou abre um objeto de evento nomeado ou sem nome e retorna um identificador para o objeto .
Openevent Abre um objeto de evento nomeado existente.
Pulseevent Define o objeto de evento especificado para o estado sinalizado e o redefine para o estado não atribuído depois de liberar o número apropriado de threads de espera.
Resetevent Define o objeto de evento especificado como o estado não atribuído.
SetEvent Define o objeto de evento especificado como o estado sinalizado.

 

Funções de inicialização única

Função de inicialização única Descrição
InitOnceBeginInitialize Inicia a inicialização única.
InitOnceComplete Conclui a inicialização única.
InitOnceExecuteOnce Executa a função especificada com êxito uma vez. Nenhum outro thread que especifique a mesma estrutura de inicialização única pode executar essa função enquanto ela está sendo executada pelo thread atual.
InitOnceInitialize Inicializa uma estrutura de inicialização única.

 

Funções interligadas

Função intertravada Descrição
InterlockedAdd Executa uma operação de adição atômica nos valores LONG especificados.
InterlockedAddAcquire Executa uma operação de adição atômica nos valores LONG especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedAddRelease Executa uma operação de adição atômica nos valores LONG especificados. A operação é executada com semântica de ordenação de memória de versão.
InterlockedAddNoFence Executa uma operação de adição atômica nos valores LONG especificados. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedAdd64 Executa uma operação de adição atômica nos valores LONGLONG especificados.
InterlockedAddAcquire64 Executa uma operação de adição atômica nos valores LONGLONG especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedAddRelease64 Executa uma operação de adição atômica nos valores LONGLONG especificados. A operação é executada com semântica de ordenação de memória de versão.
InterlockedAddNoFence64 Executa uma operação de adição atômica nos valores LONGLONG especificados. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedAnd Executa uma operação AND atômica nos valores LONG especificados.
InterlockedAndAcquire Executa uma operação AND atômica nos valores LONG especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedAndRelease Executa uma operação AND atômica nos valores LONG especificados. A operação é executada com semântica de ordenação de memória de versão.
InterlockedAndNoFence Executa uma operação AND atômica nos valores LONG especificados. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedAnd8 Executa uma operação AND atômica nos valores char especificados.
InterlockedAnd8Acquire Executa uma operação AND atômica nos valores char especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedAnd8Release Executa uma operação AND atômica nos valores char especificados. A operação é executada com semântica de ordenação de memória de versão.
InterlockedAnd8NoFence Executa uma operação AND atômica nos valores char especificados. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedAnd16 Executa uma operação AND atômica nos valores SHORT especificados.
InterlockedAnd16Acquire Executa uma operação AND atômica nos valores SHORT especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedAnd16Release Executa uma operação AND atômica nos valores SHORT especificados. A operação é executada com semântica de ordenação de memória de versão.
InterlockedAnd16NoFence Executa uma operação AND atômica nos valores SHORT especificados. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedAnd64 Executa uma operação AND atômica nos valores LONGLONG especificados.
InterlockedAnd64Acquire Executa uma operação AND atômica nos valores LONGLONG especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedAnd64Release Executa uma operação AND atômica nos valores LONGLONG especificados. A operação é executada com semântica de ordenação de memória de versão.
InterlockedAnd64NoFence Executa uma operação AND atômica nos valores LONGLONG especificados. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedBitTestAndComplement Testa o bit especificado do valor LONG especificado e o complementa.
InterlockedBitTestAndComplement64 Testa o bit especificado do valor LONG64 especificado e o complementa. A operação é atômica
InterlockedBitTestAndResetAcquire Testa o bit especificado do valor LONG especificado e o define como 0. A operação é atômica e é executada com semântica de ordenação de memória adquirida
InterlockedBitTestAndResetRelease Testa o bit especificado do valor LONG especificado e o define como 0. A operação é atômica e é executada usando semântica de liberação de memória
InterlockedBitTestAndSetAcquire Testa o bit especificado do valor LONG especificado e o define como 1. A operação é atômica e é executada com semântica de ordenação de memória adquirida
InterlockedBitTestAndSetRelease Testa o bit especificado do valor LONG especificado e o define como 1. A operação é atômica e é executada com semântica de ordenação de memória de liberação
InterlockedBitTestAndReset Testa o bit especificado do valor LONG especificado e o define como 0.
InterlockedBitTestAndReset64 Testa o bit especificado do valor LONG64 especificado e o define como 0.
InterlockedBitTestAndSet Testa o bit especificado do valor LONG especificado e o define como 1.
InterlockedBitTestAndSet64 Testa o bit especificado do valor LONG64 especificado e o define como 1.
InterlockedCompare64Exchange128 Executa uma operação atômica de comparação e troca nos valores especificados. A função compara os valores e as trocas de 64 bits especificados com o valor de 128 bits especificado com base no resultado da comparação.
InterlockedCompare64ExchangeAcquire128 Executa uma operação atômica de comparação e troca nos valores especificados. A função compara os valores e as trocas de 64 bits especificados com o valor de 128 bits especificado com base no resultado da comparação. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedCompare64ExchangeRelease128 Executa uma operação atômica de comparação e troca nos valores especificados. A função compara os valores e as trocas de 64 bits especificados com o valor de 128 bits especificado com base no resultado da comparação. A operação é executada com semântica de ordenação de memória de liberação.
Interlockedcompareexchange Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de 32 bits especificados e troca com outro valor de 32 bits com base no resultado da comparação.
InterlockedCompareExchangeAcquire Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de 32 bits especificados e troca com outro valor de 32 bits com base no resultado da comparação. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedCompareExchangeRelease Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de 32 bits especificados e troca com outro valor de 32 bits com base no resultado da comparação. A troca é executada com semântica de ordenação de memória de liberação.
InterlockedCompareExchangeNoFence Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de 32 bits especificados e troca com outro valor de 32 bits com base no resultado da comparação. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedCompareExchange64 Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de 64 bits especificados e troca com outro valor de 64 bits com base no resultado da comparação.
InterlockedCompareExchangeAcquire64 Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de 64 bits especificados e troca com outro valor de 64 bits com base no resultado da comparação. A troca é executada com semântica de ordenação de memória de aquisição.
InterlockedCompareExchangeRelease64 Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de 64 bits especificados e troca com outro valor de 64 bits com base no resultado da comparação. A troca é executada com semântica de ordenação de memória de liberação.
InterlockedCompareExchangeNoFence64 Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de 64 bits especificados e troca com outro valor de 64 bits com base no resultado da comparação. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedCompareExchange16 Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de 16 bits especificados e troca com outro valor de 16 bits com base no resultado da comparação
InterlockedCompareExchange16Acquire Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de 16 bits especificados e troca com outro valor de 16 bits com base no resultado da comparação. A operação é executada com semântica de ordenação de memória de aquisição
InterlockedCompareExchange16Release Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de 16 bits especificados e troca com outro valor de 16 bits com base no resultado da comparação. A troca é executada com semântica de ordenação de memória de liberação
InterlockedCompareExchange16NoFence Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de 16 bits especificados e troca com outro valor de 16 bits com base no resultado da comparação. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedCompareExchange128 Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de 128 bits especificados e troca com outro valor de 128 bits com base no resultado da comparação
InterlockedCompareExchangePointer Executa uma operação atômica de comparação e troca nos valores de ponteiro especificados. A função compara dois valores de ponteiro especificados e troca com outro valor de ponteiro com base no resultado da comparação.
InterlockedCompareExchangePointerAcquire Executa uma operação atômica de comparação e troca nos valores de ponteiro especificados. A função compara dois valores de ponteiro especificados e troca com outro valor de ponteiro com base no resultado da comparação. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedCompareExchangePointerRelease Executa uma operação atômica de comparação e troca nos valores de ponteiro especificados. A função compara dois valores de ponteiro especificados e troca com outro valor de ponteiro com base no resultado da comparação. A operação é executada com semântica de ordenação de memória de liberação.
InterlockedCompareExchangePointerNoFence Executa uma operação atômica de comparação e troca nos valores especificados. A função compara dois valores de ponteiro especificados e troca com outro valor de ponteiro com base no resultado da comparação. A operação é executada atomicamente, mas sem usar barreiras de memória
Interlockeddecrement Diminui (diminui em um) o valor da variável de 32 bits especificada como uma operação atômica.
InterlockedDecrementAcquire Diminui (diminui em um) o valor da variável de 32 bits especificada como uma operação atômica. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedDecrementRelease Diminui (diminui em um) o valor da variável de 32 bits especificada como uma operação atômica. A operação é executada com semântica de ordenação de memória de liberação.
InterlockedDecrementNoFence Diminui (diminui em um) o valor da variável de 32 bits especificada como uma operação atômica. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedDecrement16 Diminui (diminui em um) o valor da variável de 16 bits especificada como uma operação atômica
InterlockedDecrement16Acquire Diminui (diminui em um) o valor da variável de 16 bits especificada como uma operação atômica. A operação é executada com semântica de ordenação de memória de aquisição
InterlockedDecrement16Release Diminui (diminui em um) o valor da variável de 16 bits especificada como uma operação atômica. A operação é executada com semântica de ordenação de memória de liberação
InterlockedDecrement16NoFence Diminui (diminui em um) o valor da variável de 16 bits especificada como uma operação atômica. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedDecrement64 Diminui (diminui em um) o valor da variável de 64 bits especificada como uma operação atômica.
InterlockedDecrementAcquire64 Diminui (diminui em um) o valor da variável de 64 bits especificada como uma operação atômica. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedDecrementRelease64 Diminui (diminui em um) o valor da variável de 64 bits especificada como uma operação atômica. A operação é executada com semântica de ordenação de memória de liberação.
InterlockedDecrementNoFence64 Diminui (diminui em um) o valor da variável de 64 bits especificada como uma operação atômica. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedExchange Define uma variável de 32 bits para o valor especificado como uma operação atômica.
InterlockedExchangeAcquire Define uma variável de 32 bits para o valor especificado como uma operação atômica. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedExchangeNoFence Define uma variável de 64 bits para o valor especificado como uma operação atômica. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedExchange8 Define uma variável de 8 bits para o valor especificado como uma operação atômica
InterlockedExchange16 Define uma variável de 16 bits para o valor especificado como uma operação atômica.
InterlockedExchange16Acquire Define uma variável de 16 bits para o valor especificado como uma operação atômica. A operação é executada usando semântica de ordenação de memória de aquisição
InterlockedExchange16NoFence Define uma variável de 16 bits para o valor especificado como uma operação atômica. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedExchange64 Define uma variável de 64 bits para o valor especificado como uma operação atômica.
InterlockedExchangeAcquire64 Define uma variável de 32 bits para o valor especificado como uma operação atômica. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedExchangeNoFence64 Define uma variável de 64 bits para o valor especificado como uma operação atômica. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedExchangePointer Troca atomicamente um par de valores de ponteiro.
InterlockedExchangePointerAcquire Troca atomicamente um par de valores de ponteiro. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedExchangePointerNoFence Troca atomicamente um par de endereços. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedExchangeSubtract Executa uma subtração atômica de dois valores.
Interlockedexchangeadd Executa uma adição atômica de dois valores de 32 bits.
InterlockedExchangeAddAcquire Executa uma adição atômica de dois valores de 32 bits. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedExchangeAddRelease Executa uma adição atômica de dois valores de 32 bits. A operação é executada com semântica de ordenação de memória de liberação.
InterlockedExchangeAddNoFence Executa uma adição atômica de dois valores de 32 bits. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedExchangeAdd64 Executa uma adição atômica de dois valores de 64 bits.
InterlockedExchangeAddAcquire64 Executa uma adição atômica de dois valores de 64 bits. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedExchangeAddRelease64 Executa uma adição atômica de dois valores de 64 bits. A operação é executada com semântica de ordenação de memória de liberação.
InterlockedExchangeAddNoFence64 Executa uma adição atômica de dois valores de 64 bits. A operação é executada atomicamente, mas sem usar barreiras de memória
Interlockedincrement Incrementa (aumenta em um) o valor da variável de 32 bits especificada como uma operação atômica.
InterlockedIncrementAcquire Incrementa (aumenta em um) o valor da variável de 32 bits especificada como uma operação atômica. A operação é executada usando semântica de ordenação de memória de aquisição.
InterlockedIncrementRelease Incrementa (aumenta em um) o valor da variável de 32 bits especificada como uma operação atômica. A operação é executada usando semântica de ordenação de memória de liberação.
InterlockedIncrementNoFence Incrementa (aumenta em um) o valor da variável de 32 bits especificada como uma operação atômica. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedIncrement16 Incrementa (aumenta em um) o valor da variável de 16 bits especificada como uma operação atômica
InterlockedIncrement16Acquire Incrementa (aumenta em um) o valor da variável de 16 bits especificada como uma operação atômica. A operação é executada usando semântica de ordenação de memória de aquisição
InterlockedIncrement16Release Incrementa (aumenta em um) o valor da variável de 16 bits especificada como uma operação atômica. A operação é executada usando semântica de ordenação de memória de liberação
InterlockedIncrement16NoFence Incrementa (aumenta em um) o valor da variável de 16 bits especificada como uma operação atômica. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedIncrement64 Incrementa (aumenta em um) o valor da variável de 64 bits especificada como uma operação atômica.
InterlockedIncrementAcquire64 Incrementa (aumenta em um) o valor da variável de 64 bits especificada como uma operação atômica. A operação é executada usando semântica de ordenação de memória de aquisição.
InterlockedIncrementRelease64 Incrementa (aumenta em um) o valor da variável de 64 bits especificada como uma operação atômica. A operação é executada usando semântica de ordenação de memória de liberação.
InterlockedIncrementNoFence64 Incrementa (aumenta em um) o valor da variável de 64 bits especificada como uma operação atômica. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedOr Executa uma operação OR atômica nos valores LONG especificados.
InterlockedOrAcquire Executa uma operação OR atômica nos valores LONG especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedOrRelease Executa uma operação OR atômica nos valores LONG especificados. A operação é executada com semântica de ordenação de memória de liberação.
InterlockedOrNoFence Executa uma operação OR atômica nos valores LONG especificados. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedOr8 Executa uma operação OR atômica nos valores char especificados.
InterlockedOr8Acquire Executa uma operação OR atômica nos valores char especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedOr8Release Executa uma operação OR atômica nos valores char especificados. A operação é executada com semântica de ordenação de memória de liberação.
InterlockedOr8NoFence Executa uma operação OR atômica nos valores char especificados. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedOr16 Executa uma operação OR atômica nos valores SHORT especificados.
InterlockedOr16Acquire Executa uma operação OR atômica nos valores SHORT especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedOr16Release Executa uma operação OR atômica nos valores SHORT especificados. A operação é executada com semântica de ordenação de memória de liberação.
InterlockedOr16NoFence Executa uma operação OR atômica nos valores SHORT especificados. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedOr64 Executa uma operação OR atômica nos valores LONGLONG especificados.
InterlockedOr64Acquire Executa uma operação OR atômica nos valores LONGLONG especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedOr64Release Executa uma operação OR atômica nos valores LONGLONG especificados. A operação é executada com semântica de ordenação de memória de liberação.
InterlockedOr64NoFence Executa uma operação OR atômica nos valores LONGLONG especificados. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedXor Executa uma operação XOR atômica nos valores LONG especificados.
InterlockedXorAcquire Executa uma operação XOR atômica nos valores LONG especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedXorRelease Executa uma operação XOR atômica nos valores LONG especificados. A operação é executada com semântica de ordenação de memória de liberação.
InterlockedXorNoFence Executa uma operação XOR atômica nos valores LONG especificados. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedXor8 Executa uma operação XOR atômica nos valores char especificados.
InterlockedXor8Acquire Executa uma operação XOR atômica nos valores char especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedXor8Release Executa uma operação XOR atômica nos valores char especificados. A operação é executada com semântica de ordenação de memória de liberação.
InterlockedXor8NoFence Executa uma operação XOR atômica nos valores char especificados. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedXor16 Executa uma operação XOR atômica nos valores SHORT especificados.
InterlockedXor16Acquire Executa uma operação XOR atômica nos valores SHORT especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedXor16Release Executa uma operação XOR atômica nos valores SHORT especificados. A operação é executada com semântica de ordenação de memória de liberação.
InterlockedXor16NoFence Executa uma operação XOR atômica nos valores SHORT especificados. A operação é executada atomicamente, mas sem usar barreiras de memória
InterlockedXor64 Executa uma operação XOR atômica nos valores LONGLONG especificados.
InterlockedXor64Acquire Executa uma operação XOR atômica nos valores LONGLONG especificados. A operação é executada com semântica de ordenação de memória de aquisição.
InterlockedXor64Release Executa uma operação XOR atômica nos valores LONGLONG especificados. A operação é executada com semântica de ordenação de memória de liberação.
InterlockedXor64NoFence Executa uma operação XOR atômica nos valores LONGLONG especificados. A operação é executada atomicamente, mas sem usar barreiras de memória

 

Funções mutex

Função Mutex Descrição
Createmutex Cria ou abre um objeto mutex nomeado ou sem nome.
CreateMutexEx Cria ou abre um objeto mutex nomeado ou sem nome e retorna um identificador para o objeto .
OpenMutex Abre um objeto mutex nomeado existente.
Releasemutex Libera a propriedade do objeto mutex especificado.

 

Funções de namespace privadas

Função de namespace privado Descrição
AddSIDToBoundaryDescriptor Adiciona um novo SID (identificador de segurança) ao descritor de limite especificado.
AddIntegrityLabelToBoundaryDescriptor Adiciona um novo SID (identificador de segurança) necessário ao descritor de limite especificado.
ClosePrivateNamespace Fecha um identificador de namespace aberto.
CreateBoundaryDescriptor Cria um descritor de limite.
CreatePrivateNamespace Cria um namespace privado.
DeleteBoundaryDescriptor Exclui o descritor de limite especificado.
OpenPrivateNamespace Abre um namespace privado.

 

Funções de semáforo

Função semaphore Descrição
Createsemaphore Cria ou abre um objeto de semáforo nomeado ou sem nome.
CreateSemaphoreEx Cria ou abre um objeto de semáforo nomeado ou sem nome e retorna um identificador para o objeto .
OpenSemaphore Abre um objeto de semáforo nomeado existente.
Releasesemaphore Aumenta a contagem do objeto de semáforo especificado em um valor especificado.

 

Funções de lista vinculadas ao Singly

Função de lista vinculada ao Singly Descrição
InitializeSListHead Inicializa o cabeçalho de uma lista vinculada.
InterlockedFlushSList Libera toda a lista de itens em uma lista vinculada.
InterlockedPopEntrySList Remove um item da frente de uma lista vinculada.
InterlockedPushEntrySList Insere um item na frente de uma lista vinculada.
InterlockedPushListSList Insere uma lista vinculada na frente de outra lista vinculada.
InterlockedPushListSListEx Insere uma lista vinculada na frente de outra lista vinculada. O acesso às listas é sincronizado em um sistema multiprocessador. Esta versão do método não usa a convenção de chamada __fastcall
QueryDepthSList Recupera o número de entradas na lista vinculada de forma singly especificada.
RtlFirstEntrySList Recupera a primeira entrada em uma lista vinculada.
RtlInitializeSListHead Inicializa o cabeçalho de uma lista vinculada. Em vez disso, os aplicativos devem chamar InitializeSListHead .
RtlInterlockedFlushSList Libera toda a lista de itens em uma lista vinculada. Em vez disso, os aplicativos devem chamar InterlockedFlushSList .
RtlInterlockedPopEntrySList Remove um item da frente de uma lista vinculada. Em vez disso, os aplicativos devem chamar InterlockedPopEntrySList .
RtlInterlockedPushEntrySList Insere um item na frente de uma lista vinculada. Em vez disso, os aplicativos devem chamar InterlockedPushEntrySList .
RtlQueryDepthSList Recupera o número de entradas na lista vinculada de forma singly especificada. Em vez disso, os aplicativos devem chamar QueryDepthSList .

 

Funções de barreira de sincronização

Função de barreira de sincronização Descrição
DeleteSynchronizationBarrier Exclui uma barreira de sincronização.
EnterSynchronizationBarrier Entra em uma barreira de sincronização e aguarda o número apropriado de threads se encontrarem na barreira.
InitializeSynchronizationBarrier Inicializa uma nova barreira de sincronização.

 

Funções de temporizador de fila de temporizador

Função timer-queue timer Descrição
ChangeTimerQueueTimer Atualizações um temporizador de fila de temporizador.
CreateTimerQueue Cria uma fila para temporizadores.
CreateTimerQueueTimer Cria um temporizador de fila de temporizador.
DeleteTimerQueue Exclui uma fila de temporizador.
DeleteTimerQueueEx Exclui uma fila de temporizador.
DeleteTimerQueueTimer Cancela um temporizador de fila de temporizador.

 

Funções de espera

Função Wait Descrição
Msgwaitformultipleobjects Aguarda até que um ou todos os objetos especificados estejam no estado sinalizado ou o intervalo de tempo limite se especifique. Os objetos podem incluir objetos de evento de entrada.
Msgwaitformultipleobjectsex Aguarda até que um ou todos os objetos especificados estejam no estado sinalizado, uma rotina de conclusão de E/S ou APC (chamada de procedimento assíncrono) seja enfileirada para o thread ou o intervalo de tempo limite decorrido. A matriz de objetos pode incluir objetos de evento de entrada.
Registerwaitforsingleobject Direciona um thread de espera no pool de threads para aguardar o objeto .
SignalObjectAndWait Sinaliza um objeto e aguarda outro objeto como uma única operação.
UnregisterWait Cancela uma operação de espera registrada.
UnregisterWaitEx Cancela uma operação de espera registrada.
Waitformultipleobjects Aguarda até que um ou todos os objetos especificados estejam no estado sinalizado ou o intervalo de tempo limite se especifique.
WaitForMultipleObjectsEx Aguarda até que um ou todos os objetos especificados estejam no estado sinalizado, uma rotina de conclusão de E/S ou APC (chamada de procedimento assíncrono) seja enfileirada para o thread ou o intervalo de tempo limite decorrido.
WaitForSingleObject Aguarda até que o objeto especificado esteja no estado sinalizado ou o intervalo de tempo limite se especifique.
WaitForSingleObjectEx Aguarda até que o objeto especificado esteja no estado sinalizado, uma rotina de conclusão de E/S ou APC (chamada de procedimento assíncrono) seja enfileirada para o thread ou o intervalo de tempo limite decorre.
WaitOnAddress Aguarda o valor no endereço especificado ser alterado.
Waitortimercallback Uma função definida pelo aplicativo que serve como o endereço inicial para um retorno de chamada de temporizador ou um retorno de chamada de espera registrado.
WakeByAddressAll Ativa todos os threads aguardando a alteração do valor de um endereço.
WakeByAddressSingle Ativa um thread aguardando a alteração do valor de um endereço.

 

Funções waitable-timer

Função waitable-timer Descrição
CancelWaitableTimer Define o temporizador de espera especificado como o estado inativo.
CreateWaitableTimer Cria ou abre um objeto de temporizador de espera.
CreateWaitableTimerEx Cria ou abre um objeto de temporizador que pode ser esperado e retorna um identificador para o objeto .
OpenWaitableTimer Abre um objeto de temporizador chamado existente.
SetWaitableTimer Ativa o temporizador de espera especificado.
SetWaitableTimerEx Ativa o temporizador de espera especificado e fornece informações de contexto para o temporizador. .
TimerAPCProc Rotina de conclusão do temporizador definida pelo aplicativo usada com a função SetWaitableTimer .