Freigeben über


FsRtlPostStackOverflow-Funktion (ntifs.h)

Die FsRtlPostStackOverflow Routine stellt ein Stapelüberlaufelement an den Stapelüberlaufthread.

Syntax

void FsRtlPostStackOverflow(
  [in] PVOID                         Context,
  [in] PKEVENT                       Event,
  [in] PFSRTL_STACK_OVERFLOW_ROUTINE StackOverflowRoutine
);

Parameter

[in] Context

Ein Kontextzeiger, der an die Stapelüberlaufrückrufroutine übergeben werden soll.

[in] Event

Ein Zeiger auf ein vom Aufrufer zugewiesenes Benachrichtigungsereignis, das an die Stapelüberlaufrückrufroutine übergeben wird. Muss durch Aufrufen von KeInitializeEventals nicht signalisiert initialisiert worden sein.

[in] StackOverflowRoutine

Ein Zeiger auf eine Rückrufroutine, die beim Verarbeiten der Anforderung im Überlaufthread aufgerufen werden soll.

Rückgabewert

Nichts

Bemerkungen

Ein Dateisystem ruft in der Regel FsRtlPostStackOverflow- während eines Datei-E/A-Vorgangs auf, wenn die Menge des verbleibenden Stapelspeichers, der von IoGetRemainingStackSize- zurückgegeben wird, unter dem Stapelüberlaufschwellenwert des Dateisystems für den Vorgang liegt. FsRtlPostStackOverflow die E/A-Anforderung an eine spezielle Stapelüberlauf-Arbeitswarteschlange sendet. Wenn der E/A-Vorgang abgeschlossen wurde, wird der Event- des Aufrufers auf einen signalisierten Zustand festgelegt.

Dateisystemfiltertreiber sollten IoQueueWorkItem- anstelle von FsRtlPostStackOverflowverwenden, da IoQueueWorkItem- sicherstellt, dass das Geräteobjekt, das der angegebenen Arbeitsaufgabe zugeordnet ist, für die Verarbeitung der Arbeitsaufgabe verfügbar ist.

Wenn ein Poolzuordnungsfehler auftritt, löst FsRtlPostStackOverflow eine STATUS_INSUFFICIENT_RESOURCES Ausnahme aus. Um die Kontrolle zu erlangen, wenn dieser Poolzuordnungsfehler auftritt, sollte der Treiber den Aufruf von FsRtlPostStackOverflow in einem try-except- oder try-finally-Anweisung umschließen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000
Zielplattform- Universal
Header- ntifs.h (include FltKernel.h, Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- <= DISPATCH_LEVEL

Siehe auch

FsRtlPostPagingFileStackOverflow

IoGetRemainingStackSize

IoQueueWorkItem-

KeInitializeEvent-