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

Weitere Informationen

KsDiscardEvent