Verwenden von Ereignissen mit asynchronen Aufrufen
Wenn Sie Methoden verwenden, die asynchron aufgerufen werden, sollten Sie häufig die weitere Verarbeitung Ihrer Anwendung anhalten, bis die Verarbeitung der Methode abgeschlossen ist. Sie können eine beliebige Technik implementieren, um diese Situation zu behandeln. In diesem Abschnitt wird die Verwendung eines Ereignisses zum Warten auf asynchrone Aufrufe im aufrufenden Thread beschrieben. Diese Technik wird häufig mit dem Windows Media Format SDK verwendet und wird in einigen Beispielanwendungen demonstriert.
Die folgende Liste fasst die Verwendung von Ereignissen zum Warten auf asynchrone Aufrufe zusammen.
- Erstellen Sie ein Ereignis für die Verwendung mit Ihrer Anwendung, indem Sie die CreateEvent-Funktion des Platform SDK aufrufen.
- Wenn Sie die entsprechenden Rückrufe für Ihre Anwendung implementieren, fangen Sie die Nachrichten ab, auf die Sie warten müssen. Signalisieren Sie in der Nachrichtenverarbeitungslogik für die gewünschten Nachrichten das Ereignis, indem Sie die SetEvent-Funktion des Platform SDK aufrufen.
- Nachdem Aufrufe asynchroner Ereignisse in Ihrer Anwendung erfolgt sind, warten Sie, bis das Ereignis signalisiert wird, indem Sie die WaitForSingleObject-Funktion des Platform SDK aufrufen. Wenn Sie eine Windows-Anwendung entwerfen, sollten Sie eine Schleife erstellen, um nach Windows-Nachrichten zu suchen und einen Aufruf von WaitForSingleObject in die Schleife mit einer kurzen Wartezeit einschlussen.