FsRtlPostStackOverflow 関数 (ntifs.h)
FsRtlPostStackOverflow ルーチンは、スタック オーバーフロー項目をスタック オーバーフロー スレッドにポストします。
構文
void FsRtlPostStackOverflow(
[in] PVOID Context,
[in] PKEVENT Event,
[in] PFSRTL_STACK_OVERFLOW_ROUTINE StackOverflowRoutine
);
パラメーター
[in] Context
スタック オーバーフロー コールバック ルーチンに渡されるコンテキスト ポインター。
[in] Event
スタック オーバーフロー コールバック ルーチンに渡す呼び出し元によって割り当てられた通知イベントへのポインター。 KeInitializeEvent を呼び出して、非署名として初期化されている必要があります。
[in] StackOverflowRoutine
オーバーフロー スレッドで要求を処理するときに呼び出されるコールバック ルーチンへのポインター。
戻り値
なし
解説
通常、ファイル システムは、IoGetRemainingStackSize によって返される残りのスタック領域の量が、操作のファイル システムのスタック オーバーフローしきい値を下回った場合に、ファイル I/O 操作中に FsRtlPostStackOverflow を呼び出します。 FsRtlPostStackOverflow は、I/O 要求を特殊なスタック オーバーフロー作業キューにポストします。 I/O 操作が完了すると、呼び出し元の イベント はシグナル状態に設定されます。
ファイル システム フィルター ドライバーでは、FsRtlPostStackOverflow ではなく IoQueueWorkItem を使用する必要があります。IoQueueWorkItem を使用すると、指定した作業項目に関連付けられているデバイス オブジェクトが作業項目の処理に使用できるようになるためです。
プール割り当てエラーが発生した場合、 FsRtlPostStackOverflow はSTATUS_INSUFFICIENT_RESOURCES例外を発生させます。 このプール割り当てエラーが発生したかどうかを制御するには、ドライバーは FsRtlPostStackOverflow への呼び出しを try-except ステートメントまたは try-finally ステートメントでラップする必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 |
対象プラットフォーム | ユニバーサル |
Header | ntifs.h (FltKernel.h、Ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |
こちらもご覧ください
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示