Compartilhar via


Aguardar funções de depuração

[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Audio/Video Capture in 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 builds de varejo, as funções DbgWaitForMultipleObjects e DbgWaitForSingleObject funcionam como suas contrapartes da API do Windows, WaitForMultipleObjects e WaitForSingleObject, com intervalos infinitos de tempo limite.

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

HKEY_LOCAL_MACHINE\<DebugRoot>\<Module Name>\TIMEOUT

em que <DebugRoot> é o caminho do Registro descrito no tópico Depurar Funções de Saída.

Se a chave não existir, o valor de tempo limite será definido como INFINITE. Você pode usar a função DbgSetWaitTimeout 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) dos objetos especificados seja sinalizado.
DbgWaitForSingleObject Aguarda que um objeto seja sinalizado.