FltQueueGenericWorkItem-Funktion (fltkernel.h)
FltQueueGenericWorkItem stellt eine Arbeitsaufgabe bereit, die keinem bestimmten E/A-Vorgang einer Arbeitswarteschlange zugeordnet ist.
Syntax
NTSTATUS FLTAPI FltQueueGenericWorkItem(
[in] PFLT_GENERIC_WORKITEM FltWorkItem,
[in] PVOID FltObject,
[in] PFLT_GENERIC_WORKITEM_ROUTINE WorkerRoutine,
[in] WORK_QUEUE_TYPE QueueType,
[in, optional] PVOID Context
);
Parameter
[in] FltWorkItem
Zeiger auf die Arbeitsaufgabe, die der Arbeitswarteschlange hinzugefügt werden soll. Die Arbeitsaufgabe muss durch Aufrufen FltAllocateGenericWorkItem-zugewiesen worden sein.
[in] FltObject
Undurchsichtiger Filter (PFLT_FILTER) oder Instanzzeiger (PFLT_INSTANCE) für den Aufrufer.
[in] WorkerRoutine
Zeiger auf eine vom Anrufer bereitgestellte Workerroutine. Diese Routine wird wie folgt deklariert:
typedef VOID
(*PFLT_GENERIC_WORKITEM_ROUTINE) (
_In_ PFLT_GENERIC_WORKITEM FltWorkItem,
_In_ PVOID FltObject,
_In_opt_ PVOID Context
);
FltWorkItem
Undurchsichtiger Zeiger auf eine generische Arbeitsaufgabenstruktur.
FltObject
Opaque filter pointer that was passed as the FltObject parameter of FltQueueGenericWorkItem.
Zusammenhang
Kontextinformationspunkt, der als Context Parameter von FltQueueGenericWorkItemübergeben wurde. Dieser Parameter ist optional.
[in] QueueType
Gibt die Warteschlange an, in die die Arbeitsaufgabe FltWorkItem Punkt eingefügt werden soll. QueueType- kann eine der folgenden sein:
Wert | Bedeutung |
---|---|
CriticalWorkQueue- | Fügen Sie die Arbeitsaufgabe in die Warteschlange ein, aus der ein Systemthread mit einem Attribut mit Echtzeitpriorität die Arbeitsaufgabe verarbeitet. |
DelayedWorkQueue | Fügen Sie die Arbeitsaufgabe in die Warteschlange ein, aus der ein Systemthread mit einem variablen Prioritätsattribut die Arbeitsaufgabe verarbeitet. |
Der QueueType-wertHyperCriticalWorkQueue für die Systemverwendung reserviert ist.
[in, optional] Context
Zeiger auf aufruferdefinierte Kontextinformationen, die als Context Parameter der rückrufroutin ierten Parameter übergeben werden sollen. Dieser Parameter ist optional.
Rückgabewert
FltQueueGenericWorkItem gibt STATUS_SUCCESS oder einen geeigneten NTSTATUS-Wert zurück, z. B. einen der folgenden:
Rückgabecode | Beschreibung |
---|---|
|
Der Minifiltertreiber wird entladen. Dies ist ein Fehlercode. |
Bemerkungen
FltQueueGenericWorkItem fügt eine Arbeitsaufgabe ein, die keinem bestimmten E/A-Vorgang in eine Systemarbeitswarteschlange zugeordnet ist. Die angegebene WorkerRoutine Rückrufroutine wird im Kontext eines Systemthreads bei IRQL-PASSIVE_LEVEL aufgerufen.
Rufen Sie FltAllocateGenericWorkItem-auf, um eine Arbeitsaufgabe zuzuweisen.
Rufen Sie FltFreeGenericWorkItem-auf, um die Arbeitsaufgabe frei zu geben, wenn sie nicht mehr benötigt wird.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Header- | fltkernel.h (include Fltkernel.h) |
Library | FltMgr.lib |
DLL- | Fltmgr.sys |
IRQL- | <= DISPATCH_LEVEL |