VideoPortWaitForSingleObject 函数 (video.h)

VideoPortWaitForSingleObject 函数将当前线程置于等待状态,直到给定调度对象设置为信号状态,或者 (选择性地) ,直到等待超时。

语法

VIDEOPORT_API VP_STATUS VideoPortWaitForSingleObject(
  [in] IN PVOID          HwDeviceExtension,
  [in] IN PVOID          Object,
  [in] IN PLARGE_INTEGER Timeout
);

参数

[in] HwDeviceExtension

指向微型端口驱动程序的设备扩展的指针。

[in] Object

指向事件对象的指针。

[in] Timeout

(可选) 指向超时值的指针,该值指定要完成等待的绝对时间或相对时间。 负值指定相对于当前时间的等待间隔。 该值应以 100 纳秒为单位表示。 绝对过期时间跟踪系统时间中的任何更改;相对过期时间不受系统时间更改的影响。

返回值

VideoPortWaitForSingleObject 返回以下值之一:

返回代码 说明
ERROR_INVALID_PARAMETER 其中一个参数无效,或者调用尝试等待映射的用户事件。
NO_ERROR pObject 参数中指定的事件对象满足等待。
WAIT_TIMEOUT 在事件对象设置为信号状态之前发生超时。 当无法立即满足指定的等待条件集并且 Timeout 设置为零时,可以返回此值。

注解

微型端口驱动程序不应尝试等待映射的用户事件。

VideoPortWaitForSingleObject 的调用方必须在 IRQL <= DISPATCH_LEVEL 运行。 通常,调用方将在 IRQL = PASSIVE_LEVEL 并在非比特线程上下文中运行。 在 IRQL = DISPATCH_LEVEL 运行时对此函数的调用仅在调用方将 Timeout 值指定为零时有效。 也就是说,微型端口驱动程序不得在 IRQL = DISPATCH_LEVEL等待非零间隔。

要求

要求
最低受支持的客户端 在 Windows XP 和更高版本的 Windows 操作系统中可用。
目标平台 桌面
标头 video.h (包括 Video.h)
Library Videoprt.lib
DLL Videoprt.sys
IRQL <= DISPATCH_LEVEL (请参阅备注部分)