Função ReleaseMutex (synchapi.h)
Libera a propriedade do objeto mutex especificado.
Sintaxe
BOOL ReleaseMutex(
[in] HANDLE hMutex
);
Parâmetros
[in] hMutex
Um identificador para o objeto mutex. O CreateMutex ou
A função OpenMutex retorna esse identificador.
Valor retornado
Se a função for bem-sucedida, o valor retornado será diferente de zero.
Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.
Comentários
A função ReleaseMutex falhará se o thread de chamada não possuir o objeto mutex.
Um thread obtém a propriedade de um mutex criando-o com o parâmetro bInitialOwner definido como TRUE ou especificando seu identificador em uma chamada para uma das funções de espera. Quando o thread não precisa mais possuir o objeto mutex, ele chama a função ReleaseMutex para que outro thread possa adquirir a propriedade.
Um thread pode especificar um mutex que ele já possui em uma chamada para uma das funções de espera sem bloquear sua execução. Isso impede que um thread se deadlocking enquanto aguarda um mutex que ele já possui. No entanto, para liberar sua propriedade, o thread deve chamar ReleaseMutex uma vez para cada vez que ele obteve a propriedade (por meio de CreateMutex ou de uma função de espera).
Exemplos
Para obter um exemplo que usa ReleaseMutex, consulte Usando objetos Mutex.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP [aplicativos da área de trabalho | aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | synchapi.h (inclua Windows.h no Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2) |
Biblioteca | Kernel32.lib |
DLL | Kernel32.dll |