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 이벤트 개체가 신호 상태로 설정되기 전에 시간 초과가 발생했습니다. 지정된 대기 조건 집합을 즉시 충족할 수 없고 시간 제한이 0으로 설정된 경우 이 값을 반환할 수 있습니다.

설명

미니포트 드라이버는 매핑된 사용자 이벤트를 기다리려고 시도해서는 안 됩니다.

VideoPortWaitForSingleObject의 호출자는 IRQL <= DISPATCH_LEVEL 실행되어야 합니다. 일반적으로 호출자는 IRQL = PASSIVE_LEVEL 및 비비타적 스레드 컨텍스트에서 실행됩니다. IRQL = DISPATCH_LEVEL 실행하는 동안 이 함수에 대한 호출은 호출자가 시간 제한 값을 0으로 지정하는 경우에만 유효합니다. 즉, 미니포트 드라이버는 IRQL = DISPATCH_LEVEL 0이 아닌 간격을 기다리면 안됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다.
대상 플랫폼 데스크톱
머리글 video.h(Video.h 포함)
라이브러리 Videoprt.lib
DLL Videoprt.sys
IRQL <= DISPATCH_LEVEL(설명 섹션 참조)