Compartilhar via


Função InitializeSynchronizationBarrier (synchapi.h)

Inicializa uma nova barreira de sincronização.

Sintaxe

BOOL InitializeSynchronizationBarrier(
  [out] LPSYNCHRONIZATION_BARRIER lpBarrier,
  [in]  LONG                      lTotalThreads,
  [in]  LONG                      lSpinCount
);

Parâmetros

[out] lpBarrier

Um ponteiro para a estrutura SYNCHRONIZATION_BARRIER a ser inicializada. Essa é uma estrutura opaca que não deve ser modificada por aplicativos.

[in] lTotalThreads

O número máximo de threads que podem entrar nessa barreira. Depois que o número máximo de threads tiver entrado na barreira, todos os threads continuarão.

[in] lSpinCount

O número de vezes que um thread individual deve girar enquanto aguarda outros threads chegarem à barreira. Se esse parâmetro for -1, o thread girará 2.000 vezes. Se o thread exceder lSpinCount, o thread será bloqueado, a menos que ele tenha chamado EnterSynchronizationBarrier com SYNCHRONIZATION_BARRIER_FLAGS_SPIN_ONLY.

Retornar valor

TRUE se a barreira foi inicializada com êxito. Se a barreira não tiver sido inicializada com êxito, essa função retornará FALSE. Use GetLastError para obter informações de erro estendidas.

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 synchapi.h (inclua Windows.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

DeleteSynchronizationBarrier

EnterSynchronizationBarrier

Barreiras de sincronização

APIs Vertdll disponíveis em enclaves de VBS