Delphi WinAPI WaitForSingleObject-等待函数-等待指定对象处于有信号状态或超时间隔结束。
函数原型:
DWORD WaitForSingleObject(
HANDLE hHandle, //句柄
DWORD dwMilliseconds //超时间隔毫秒
);
返回值:
执行成功,返回指示导致函数返回的事件:
- WAIT_ABANDONED //指定的对象是互斥对象,在所属线程终止之前,拥有互斥对象的线程未释放该互斥对象。互斥对象的所有权被授予调用线程,互斥状态被设置为nonsignaled。如果互斥锁正在保护持久状态信息,则应检查其一致性。
- WAIT_OBJECT_0 //指定对象的状态已发出信号。
- WAIT_OBJECT_0 //超时间隔已过,并且对象的状态未被忽略。
- WAIT_FAILED //函数失败。获取扩展错误信息,请调用GetLastError。
WaitForSingleObject函数可以等待以下对象:
- Change notification
- Console input
- Event
- Memory resource notification
- Mutex
- Process
- Semaphore
- Thread
- Waitable timer
扩展:
要进入可报警的等待状态,请使用WaitForSingleObjectEx函数。
要等待多个对象,请使用 WaitForMultipleObjects。
创建时间:2020.05.04 更新日期:
来源:https://www.cnblogs.com/guorongtao/p/12826388.html
Delphi WinAPI WaitForSingleObject-等待函数-等待指定对象处于有信号状态或超时间隔结束。