Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Exclui uma barreira de sincronização.
Sintaxe
BOOL DeleteSynchronizationBarrier(
[in, out] LPSYNCHRONIZATION_BARRIER lpBarrier
);
Parâmetros
[in, out] lpBarrier
Um ponteiro para a barreira de sincronização a ser excluída.
Retornar valor
A função DeleteSynchronizationBarrier sempre retorna TRUE.
Comentários
DeleteSynchronizationBarrier libera uma barreira de sincronização quando ela não é mais necessária. É seguro chamar DeleteSynchronizationBarrier imediatamente após chamar EnterSynchronizationBarrier porque essa função garante que todos os threads na barreira tenham terminado de usá-lo antes de permitir que a barreira seja lançada.
Se uma barreira de sincronização nunca for excluída, os threads poderão especificar o sinalizador SYNCHRONIZATION_BARRIER_FLAGS_NO_DELETE quando entrarem na barreira. Esse sinalizador faz com que a função ignore o trabalho extra necessário para a segurança de exclusão, o que pode melhorar o desempenho. Todos os threads que usam a barreira devem especificar esse sinalizador; se qualquer thread não o fizer, o sinalizador será ignorado. Tenha cuidado ao usar SYNCHRONIZATION_BARRIER_FLAGS_NO_DELETE, pois excluir uma barreira enquanto esse sinalizador estiver em vigor pode resultar em um acesso de identificador inválido e fazer com que um ou mais threads fiquem permanentemente bloqueados.
Requisitos
| Requisito | Valor |
|---|---|
| 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 |
| Biblioteca | Kernel32.lib |
| DLL | Kernel32.dll |