您的位置:首页 > 编程语言

windows核心编程之内核对象同步(3)

2017-09-29 15:16 260 查看
常规的等待内核对象的函数已经不用我说明了

我们来将内核对象做个纵向对比





现在我们要介绍一个用于等待子进程初始化的函数

DWORD WaitForInputIdle(

HANDLE hProcess, //子进程句柄

DWORD dwMilliseconds // 超时时间

);

该函数一直处于等待状态,直到子进程不再处理任何输入为止

MsgWaitForMultipleObjects

DWORD nCount, // number of handles in array

CONST HANDLE pHandles, // object-handle array

DWORD dwMilliseconds, // time-out interval

DWORD dwWakeMask, // input-event type

多于的我就不说了,这个函数和不带Msg的主要差别是,这个函数可以等待窗口消息(所以主要用在带界面的程序里)

我们主要讲下dwWakeMask



带ex的版本

dwFlags



返回值的说明以后补上

DWORD SignalObjectAndWait(

HANDLE hObjectToSignal, // handle to object to signal

HANDLE hObjectToWaitOn, // handle to object to watch

DWORD dwMilliseconds, // time-out interval

BOOL bAlertable // alertable option

);

将第一个内核对象变为有信号状态,等待第二个内核对象

第四个参数参考ReadFileEx,我有做过说明
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  高级等待函数