CBaseRenderer.WaitForReceiveToComplete-Methode
[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde von MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation abgelöst. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code mediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]
Die WaitForReceiveToComplete
-Methode wartet auf den Abschluss der CBaseRenderer::Receive-Methode .
Syntax
void WaitForReceiveToComplete();
Parameter
Diese Methode hat keine Parameter.
Rückgabewert
Diese Methode gibt keinen Wert zurück.
Bemerkungen
Die Methoden CBaseRenderer::Stop und CBaseRenderer::BeginFlush rufen diese Methode auf, um die Zustandsänderung mit der Receive-Methode zu synchronisieren.
Insbesondere sendet diese Methode Nachrichten, während sie darauf wartet, dass das Flag CBaseRenderer::m_bInReceivezu FALSE wird. Das Flag wird in der CBaseRenderer::P repareReceive-Methode zu TRUE und wechselt zurück zu FALSE, nachdem die Receive-Methode die CBaseRenderer::P repareRender-Methode aufgerufen hat. Die abgeleitete Klasse kann PrepareRender verwenden, um die Palette festzulegen. Durch das Warten auf den Abschluss von PrepareRender wird sichergestellt, dass Palettenänderungsmeldungen gesendet werden, bevor die Zustandsänderung eintritt. Dadurch wird ein potenzieller Deadlock vermieden.
Anforderungen
Anforderung | Wert |
---|---|
Header |
|
Bibliothek |
|