Compartir a través de


Método CBaseRenderer.WaitForReceiveToComplete

[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.

El WaitForReceiveToComplete método espera a que se complete el método CBaseRenderer::Receive .

Sintaxis

void WaitForReceiveToComplete();

Parámetros

Este método no tiene parámetros.

Valor devuelto

Este método no devuelve ningún valor.

Observaciones

Los métodos CBaseRenderer::Stop y CBaseRenderer::BeginFlush llaman a este método para sincronizar el cambio de estado con el método Receive .

En concreto, este método envía mensajes mientras espera a que la marca CBaseRenderer::m_bInReceive se convierta en FALSE. La marca se convierte en TRUE en el método CBaseRenderer::P repareReceive y vuelve a FALSE después de que el método Receive llame al método CBaseRenderer::P repareRender . La clase derivada puede usar PrepareRender para establecer la paleta. Esperar a que PrepareRender se complete garantiza que los mensajes de cambio de paleta se envíen antes de que se produzca el cambio de estado. Esto evita un posible interbloqueo.

Requisitos

Requisito Value
Encabezado
Renbase.h (include Streams.h)
Biblioteca
Strmbase.lib (compilaciones comerciales);
Strmbasd.lib (compilaciones de depuración)

Consulte también

CBaseRenderer (clase)