Partilhar via


Aguarde funções de depuração

[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEnginee Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda vivamente que o novo código utilize MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo no Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

O Microsoft DirectShow fornece várias funções para depurar esperas infinitas.

Em compilações de varejo, o DbgWaitForMultipleObjects e funções de DbgWaitForSingleObject funcionam como suas contrapartes da API do Windows, WaitForMultipleObjects e WaitForSingleObject , com intervalos de tempo limite infinitos.

Em compilações de depuração, essas funções usam um valor de tempo limite global. Se o tempo limite expirar, a função acionará uma afirmação. A seguinte chave do Registro especifica o valor de tempo limite, em milissegundos:

HKEY_LOCAL_MACHINE\<DebugRoot>\<Nome do módulo>\TIMEOUT

onde <DebugRoot> é o caminho do Registro descrito no tópico Debug Output Functions.

Se a chave não existir, o valor padrão de tempo limite será INFINITE. Você pode usar a funçãoDbgSetWaitTimeout para substituir a entrada do Registro.

Função Descrição
DbgSetWaitTimeout Define o valor de tempo limite de depuração.
DbgWaitForMultipleObjects Aguarda que qualquer (ou todos) os objetos especificados sejam sinalizados.
DbgWaitForSingleObject Aguarda que um objeto seja sinalizado.