Sdílet prostřednictvím


Použití událostí s asynchronními voláními

[Funkce přidružená k této stránce, Windows Media Format 11 SDK, je starší funkce. Byla nahrazena čtečkou zdrojů a zapisovačem jímek. zdrojový čtečka a zapisovač výstupu jsou optimalizované pro Windows 10 a Windows 11. Microsoft důrazně doporučuje, aby nový kód používal Čtečka zdrojového kódu a Zapisovač jímky místo Windows Media Format 11 SDK, pokud je to možné. Microsoft navrhuje, aby se stávající kód, který používá starší rozhraní API, přepsal, aby se nová rozhraní API používala, pokud je to možné.]

Při použití metod, které jsou volány asynchronně, budete chtít zastavit další zpracování aplikace až do dokončení zpracování metody. Můžete implementovat jakoukoli techniku, kterou chcete zvládnout tuto situaci. Tato část popisuje použití události k čekání na asynchronní volání ve volajícím vlákně. Tato technika se často používá se sadou Windows Media Format SDK a ukazuje se v některých ukázkových aplikacích.

Následující seznam shrnuje použití událostí pro čekání na asynchronní volání.

  1. Vytvořte událost pro použití s vaší aplikací zavoláním funkce CreateEvent sady SDK platformy.
  2. Při implementaci vhodných zpětných volání pro vaši aplikaci odchyťte zprávy, pro které je potřebné počkat. V logice zpracování pro požadované zprávy signalizujte událost voláním funkce SetEvent z Platform SDK.
  3. Po vyvolání asynchronních událostí ve vaší aplikaci čekejte, až událost signalizuje, a to voláním funkce WaitForSingleObject z Platform SDK. Pokud navrhujete aplikaci pro Windows, měli byste vytvořit smyčku pro kontrolu zpráv systému Windows a zahrnout volání WaitForSingleObject ve smyčce s krátkou dobou čekání.

použití metod zpětného volání