releaseMutex 函数 (synchapi.h)
释放指定互斥对象的所有权。
语法
BOOL ReleaseMutex(
[in] HANDLE hMutex
);
参数
[in] hMutex
互斥对象的句柄。 CreateMutex 或
OpenMutex 函数返回此句柄。
返回值
如果该函数成功,则返回值为非零值。
如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。
注解
如果调用线程不拥有互斥对象, 则 ReleaseMutex 函数将失败。
线程可以通过将 bInitialOwner 参数设置为 TRUE 来创建互斥体,或者在调用某个 wait 函数时指定其句柄来获取互斥体的所有权。 当线程不再需要拥有互斥对象时,它会调用 ReleaseMutex 函数,以便另一个线程可以获取所有权。
线程可以在调用某个 wait 函数时指定它已拥有的互斥体,而不会阻止其执行。 这可以防止线程在等待它已拥有的互斥体时自行死锁。 但是,若要释放其所有权,线程必须在每次通过 CreateMutex 或 wait 函数) 获取所有权 (时调用 ReleaseMutex 一次。
示例
有关使用 ReleaseMutex 的示例,请参阅 使用互斥对象。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [桌面应用 | UWP 应用] |
最低受支持的服务器 | Windows Server 2003 [桌面应用 | UWP 应用] |
目标平台 | Windows |
标头 | synchapi.h (包括 Windows Server 2003 上的 Windows.h、Windows Vista、Windows 7、Windows Server 2008 Windows Server 2008 R2) |
Library | Kernel32.lib |
DLL | Kernel32.dll |