Função VideoPortWaitForSingleObject (video.h)
A função VideoPortWaitForSingleObject coloca o thread atual em um estado de espera até que o objeto de expedição fornecido seja definido como o estado sinalizado ou (opcionalmente) até que a espera expirar.
Sintaxe
VIDEOPORT_API VP_STATUS VideoPortWaitForSingleObject(
[in] IN PVOID HwDeviceExtension,
[in] IN PVOID Object,
[in] IN PLARGE_INTEGER Timeout
);
Parâmetros
[in] HwDeviceExtension
Ponteiro para a extensão de dispositivo do driver de miniport.
[in] Object
Ponteiro para o objeto de evento.
[in] Timeout
(Opcional) Ponteiro para um valor de tempo limite que especifica o tempo absoluto ou relativo no qual a espera deve ser concluída. Um valor negativo especifica um intervalo de espera em relação à hora atual. O valor deve ser expresso em unidades de 100 nanossegundos. Os tempos de expiração absolutos acompanham as alterações na hora do sistema; os tempos de expiração relativos não são afetados pelas alterações de tempo do sistema.
Retornar valor
VideoPortWaitForSingleObject retorna um dos seguintes valores:
Código de retorno | Descrição |
---|---|
ERROR_INVALID_PARAMETER | Um dos parâmetros é inválido ou a chamada tentou aguardar um evento de usuário mapeado. |
NO_ERROR | O objeto de evento especificado no parâmetro pObject atendeu à espera. |
WAIT_TIMEOUT | Um tempo limite ocorreu antes do objeto de evento ser definido como o estado sinalizado. Esse valor pode ser retornado quando o conjunto especificado de condições de espera não pode ser atendido imediatamente e Timeout é definido como zero. |
Comentários
O driver de miniporta não deve tentar aguardar um evento de usuário mapeado.
Os chamadores de VideoPortWaitForSingleObject devem estar em execução em IRQL <= DISPATCH_LEVEL. Normalmente, o chamador será executado em IRQL = PASSIVE_LEVEL e em um contexto de thread não secundário. Uma chamada para essa função durante a execução em IRQL = DISPATCH_LEVEL será válida se e somente se o chamador especificar um valor timeout igual a zero. Ou seja, um driver de miniporto não deve esperar por um intervalo diferente de zero em IRQL = DISPATCH_LEVEL.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível no Windows XP e versões posteriores dos sistemas operacionais Windows. |
Plataforma de Destino | Área de Trabalho |
Cabeçalho | video.h (incluir Video.h) |
Biblioteca | Videoprt.lib |
DLL | Videoprt.sys |
IRQL | <= DISPATCH_LEVEL (consulte a seção Comentários) |