MsgWaitForMultipleObjects

编辑:砍头网互动百科 时间:2019-11-12 23:45:14
编辑 锁定
本词条缺少名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧!
Windows API函数。该函数等待内核对象或消息。
中文名
MsgWaitForMultipleObjects
外文名
MsgWaitForMultipleObjects
声明位置
WinUser.h
返回值类型
unsigned long
调用方式
__stdcall

目录

MsgWaitForMultipleObjectsC声明

编辑
WINUSERAPI
DWORD
WINAPI
MsgWaitForMultipleObjects(
_In_DWORDnCount,
_In_reads_opt_(nCount)CONSTHANDLE*pHandles,
_In_BOOLfWaitAll,
_In_DWORDdwMilliseconds,
_In_DWORDdwWakeMask);

MsgWaitForMultipleObjectsVB声明

编辑
DeclareFunctionMsgWaitForMultipleObjectsLib"user32"Alias"MsgWaitForMultipleObjects"(ByValnCountAsLong,pHandlesAsLong,ByValfWaitAllAsLong,ByValdwMillisecondsAsLong,ByValdwWakeMaskAsLong)AsLong

MsgWaitForMultipleObjects说明

编辑
等候单个对象或一系列对象发出信号---标志着规定的超时已经过去,或特定类型的消息已抵达线程的输入队列。如返回条件已经满足,则立即返回
返回值
Long,如fWaitAll设为TRUE,则下述任何一个常数都标志着成功:
WAIT_ABANDONED_0:所有对象都发出消息,而且其中一个或多个属于互斥体(一但拥有它门的进程中止,就会发出信号)。
WAIT_TIMEOUT:对象保持未发信号的状态,但规定的等待超时时间已经超过
WAIT_OBJECT_0:所有的对象都发出信号
WAIT_TO_COMPLETION(仅适用于WaitForSingleObjectEx),由于一个I/O完成操作已准备好执行,从而造成了函数的返回。
返回WAIT_FAILED表示函数执行失败。会设置GetLastError
如fWaitAll设为FALSE,那返回结果与前面说的相似,只是可能还会返回相对于WAIT_ABANDONED_0或WAIT_OBJECT_0的一个正偏移量,指出哪个对象是被抛弃还是发出信号。
如果是由于dwWakeMask指定的,符合特殊标准的一条消息的到达而造成了函数的返回,则返回WAIT_OBJECT_0 + nCount
参数表
参数 类型及说明
nCount Long,指定列表中的句柄数量
pHandles Long,指定对象句柄组合中的第一个元素
fWaitAll Long,如果为TRUE,表示除非对象同时发出信号,否则就等待下去。如果为FALSE,表示任何对象发出信号即可。
dwMilliseconds Long,指定要等待的毫秒数。
dwWakeMask Long,带有QS_??前缀的一个或多个常数,用于标识特定的消息类型。
注解
如果函数是由于对象发出信号而返回,这个函数还会得到一些额外的效果:
信号机:递增信号机计数
互斥体:将互斥体的所有权限赋于发出调用的线程
自动重设事件:将事件发信状态设为FALSE
自动重设可等待计时器:将计时器状态设为FALSE
词条标签:
计算机学