KsFreeEventList-Funktion (ks.h)
Die KsFreeEventList-Funktion verarbeitet das Freigeben aller Ereignisse aus einer angegebenen Liste, wobei davon ausgegangen wird, dass diese Ereignisse aus KSEVENT_ENTRY-Strukturen bestehen. Diese Funktion kann nur bei PASSIVE_LEVEL aufgerufen werden.
Syntax
KSDDKAPI VOID KsFreeEventList(
[in] PFILE_OBJECT FileObject,
[in, out] PLIST_ENTRY EventsList,
[in] KSEVENTS_LOCKTYPE EventsFlags,
[in] PVOID EventsLock
);
Parameter
[in] FileObject
Gibt das Dateiobjekt an, das an die Entfernungsfunktion für Kontextinformationen übergeben wird. Das zugeordnete Dateiobjekt wird verwendet, um mit dem Dateiobjekt zu vergleichen, das ursprünglich beim Aktivieren des Ereignisses angegeben wurde. Dadurch kann eine einzelne Ereignisliste für mehrere Clients verwendet werden, die nach Dateiobjekten unterschieden werden.
[in, out] EventsList
Zeigt auf den Kopf der Liste der KSEVENT_ENTRY Elemente, die freigegeben werden sollen. Wenn Ereignisse in der Liste derzeit deaktiviert werden, werden sie übergeben. Wenn der Liste während der Verarbeitung neue Elemente hinzugefügt werden, werden sie möglicherweise nicht freigegeben.
[in] EventsFlags
Gibt ein KSEVENTS_LOCKTYPE-Flag an, das den Typ der Ausschlusssperre angibt, die beim Zugriff auf die Ereignisliste verwendet werden soll. Wenn kein Flag festgelegt ist, wird keine Sperre genommen.
[in] EventsLock
Wird verwendet, um den Zugriff auf ein Element in der Liste zu synchronisieren. Nachdem auf das Element zugegriffen wurde, wird es als gelöscht markiert, sodass nachfolgende Entfernungsanforderungen fehlschlagen. Die Sperre wird dann nach dem Aufrufen der Entfernungsfunktion aufgehoben, sofern vorhanden. Die Entfernungsfunktion muss mit der Ereignisgenerierung synchronisiert werden, bevor das Element tatsächlich aus der Liste entfernt wird.
Rückgabewert
Keine
Bemerkungen
Die KsFreeEventList-Funktion ruft den remove-Handler und dann KsDiscardEvent für jedes Ereignis auf. Es wird nicht davon ausgegangen, dass der Aufrufer der Ereignisbesitzer ist.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
Header | ks.h (ks.h einschließen) |
Bibliothek | Ks.lib |