Compartilhar via


Função EngWaitForSingleObject (winddi.h)

A função EngWaitForSingleObject coloca o thread atual do driver de exibição em um estado de espera até que o objeto de evento especificado seja definido como o estado sinalizado ou até que a espera expirar.

Sintaxe

ENGAPI BOOL EngWaitForSingleObject(
  [in] PEVENT         pEvent,
  [in] PLARGE_INTEGER pTimeOut
);

Parâmetros

[in] pEvent

Ponteiro para um objeto de evento inicializado. Esse identificador de objeto de evento foi obtido em uma chamada anterior para EngCreateEvent.

[in] pTimeOut

(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 relativo à 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. Se pTimeOut for NULL, o thread de chamada permanecerá em um estado de espera até que o objeto de evento seja sinalizado.

Valor retornado

EngWaitForSingleObject retorna TRUE após o sucesso, o que inclui a ocorrência de um tempo limite. Caso contrário, retornará FALSE. Um valor retornado de FALSE indica que um dos parâmetros é inválido.

Comentários

EngWaitForSingleObject faz com que um thread de driver de exibição seja colocado em um estado de espera. O thread do driver de exibição permanece no estado de espera até que o objeto de evento seja definido como o estado sinalizado ou até que a espera expirar. Se nenhum valor de tempo limite for fornecido, o thread do driver de exibição permanecerá no estado de espera até que o objeto de evento seja definido como o estado sinalizado.

Um evento de sincronização é redefinido automaticamente para o estado não atribuído quando a espera é atendida. Portanto, apenas uma espera será atendida por chamada para EngSetEvent ou VideoPortSetEvent. Por outro lado, um evento de notificação não será redefinido automaticamente.

Um valor de tempo limite zero permite que o driver teste a condição de espera e execute condicionalmente quaisquer efeitos colaterais, desde que a espera possa ser atendida imediatamente.

O driver de exibição pode sincronizar operações de desenho entre si e o driver de miniporto de vídeo chamando EngWaitForSingleObject com um objeto event e aguardando até que o driver de miniporto defina o objeto de evento para o estado sinalizado.

O driver não pode chamar EngWaitForSingleObject em eventos retornados de EngMapEvent.

Requisitos

   
Cliente mínimo com suporte Essa função está disponível no Windows XP e posterior.
Plataforma de Destino Universal
Cabeçalho winddi.h (inclua Winddi.h)
Biblioteca Win32k.lib
DLL Win32k.sys

Confira também

EngCreateEvent

EngSetEvent

VideoPortSetEvent