DWORD WaitForMultipleObjects(
DWORD nCount,
CONST HANDLE *lpHandles,
BOOL bWaitAll,
DWORD dwMilliseconds
);
参数
nCount 表示lpH andles 所指之handles 数组的元素个数。最大容量是MAXIMUM_WAIT_OBJECTS。
lpHandles 指向一个由对象handles 所组成的数组。这些handles 不需要为相同的类型。
bWaitAll 如果此为TRUE,表示所有的handles 都必须激发,此函数才得以返回。否则此函数将在任何一个handle 激发时就返回。
dwMilliseconds 当该时间长度终了时,即使没有任何handles 激发,此函数也会返回。此值可为0,以便测试。亦可指定为INFINITE,表示无穷等待。
返回值
WaitForMultipleObjects() 的返回值有些复杂。
i 如果因时间终了而返回,则返回值是WAIT_TIMEOUT,类似WaitForSingleObject()。
i 如果bWaitAll 是TRUE,那么返回值将是WAIT_OBJECT_0。
i 如果bWaitAll 是FALSE,那么将返回值减去WAIT_OBJECT_0,就表示数组中的哪一个handle 被激发了。
i 如果你等待的对象中有任何mu texes,那么返回值可能从WAIT_ABANDONED_0 到 WAIT_ABANDONED_0 + nCount - 1。
i 如果函数失败,它会传回WAIT_FAILED。这时候你可以使用GetLastError() 找出失败的原因。
文字版电子书-----请点击这里
《Win32多线程程序设计》(2)---WaitForMultipleObjects()
最新推荐文章于 2023-12-12 16:53:22 发布