WaitForMultipleObjects详解

本文详细介绍了Windows API函数WaitForMultipleObjects的使用方法,包括其参数解析、返回值说明及示例应用。该函数用于等待多个内核对象,如Event、Mutex等,支持指定等待条件和超时时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

WaitForMultipleObjects几乎可以等待所有的内核对象(Event、Mutex、Process、Thread、Semaphore)。
函数原型

DWORD WaitForMultipleObjects(
	DWORD nCount,//句柄数组的数量
	const HANDLE *lpHandles,//指向句柄数组的指针
	BOOL fWaitAll,//等待标志位
	DWORD dwMilliseconds//超时时间间隔
}
  1. 参数解析
  • nCount句柄数量,最大值为MAXIMUM_WAIT_OBJECTS(64)
  • *lpHandles,指向句柄数组的指针
  • fWaitAll,等待标志位,TRUE表示等待所有对象发出信号。FALSE表示等待任一对象发出信号
  • dwMilliseconds//超时时间间隔,0代表立即返回,INFINITE代表无限等待
  1. 函数返回值
    DWORD:double word,每个word两个字节,DWORD四个字节
    |返回值|含义|
    |–|--|
    |WAIT_ABANDONED_0|所有对象发出信号(一旦拥有它们的进程中止,就会发出信号)|
    |WAIT_TIMEOUT|对象保持未发信号的状态,但超过规定的等待时间|
    |WAIT_OBJECT_0|所有对象发出信号|
    |WAIT_IO_COMPLETION|I/O操作完成,等待执行(适用于WaitForMultipleObjectsEx)|
    3.示例
    WAIT_OBJECT_0 + 5的返回结果意味着列表中的第5个对象发出了信号
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值