Fonction ReleaseMutex (synchapi.h)
Libère la propriété de l’objet mutex spécifié.
Syntaxe
BOOL ReleaseMutex(
[in] HANDLE hMutex
);
Paramètres
[in] hMutex
Handle de l’objet mutex. CreateMutex ou
La fonction OpenMutex retourne ce handle.
Valeur retournée
Si la fonction réussit, la valeur de retour est différente de zéro.
Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.
Remarques
La fonction ReleaseMutex échoue si le thread appelant ne possède pas l’objet mutex.
Un thread obtient la propriété d’un mutex soit en le créant avec le paramètre bInitialOwner défini sur TRUE , soit en spécifiant son handle dans un appel à l’une des fonctions d’attente. Lorsque le thread n’a plus besoin de posséder l’objet mutex, il appelle la fonction ReleaseMutex afin qu’un autre thread puisse acquérir la propriété.
Un thread peut spécifier un mutex qu’il possède déjà dans un appel à l’une des fonctions d’attente sans bloquer son exécution. Cela empêche un thread de se bloquer pendant l’attente d’un mutex qu’il possède déjà. Toutefois, pour libérer sa propriété, le thread doit appeler ReleaseMutex une fois pour chaque fois qu’il a obtenu la propriété (par le biais de CreateMutex ou d’une fonction d’attente).
Exemples
Pour obtenir un exemple qui utilise ReleaseMutex, consultez Utilisation d’objets Mutex.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau | applications UWP] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau | applications UWP] |
Plateforme cible | Windows |
En-tête | synchapi.h (inclure Windows.h sur Windows Server 2003, Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2) |
Bibliothèque | Kernel32.lib |
DLL | Kernel32.dll |