Compartilhar via


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

Confira também

Createmutex

Objetos Mutex

Funções de sincronização