Função FsRtlPostStackOverflow (ntifs.h)
O FsRtlPostStackOverflow a rotina posta um item de estouro de pilha no thread de estouro de pilha.
Sintaxe
void FsRtlPostStackOverflow(
[in] PVOID Context,
[in] PKEVENT Event,
[in] PFSRTL_STACK_OVERFLOW_ROUTINE StackOverflowRoutine
);
Parâmetros
[in] Context
Um ponteiro de contexto a ser passado para a rotina de retorno de chamada de estouro de pilha.
[in] Event
Um ponteiro para um evento de notificação alocado pelo chamador a ser passado para a rotina de retorno de chamada de estouro de pilha. Deve ter sido inicializado como não atribuído chamando KeInitializeEvent.
[in] StackOverflowRoutine
Um ponteiro para uma rotina de retorno de chamada a ser invocada ao processar a solicitação no thread de estouro.
Valor de retorno
Nenhum
Observações
Um sistema de arquivos normalmente chama FsRtlPostStackOverflow durante uma operação de E/S de arquivo quando a quantidade de espaço de pilha restante retornado por IoGetRemainingStackSize está abaixo do limite de estouro de pilha do sistema de arquivos para a operação.
FsRtlPostStackOverflow posta a solicitação de E/S em uma fila de trabalho de estouro de pilha especial. Quando a operação de E/S for concluída, o de Evento de
Os drivers de filtro do sistema de arquivos devem usar IoQueueWorkItem em vez de FsRtlPostStackOverflow, pois IoQueueWorkItem garante que o objeto de dispositivo associado ao item de trabalho especificado esteja disponível para o processamento do item de trabalho.
Se ocorrer uma falha de alocação de pool, FsRtlPostStackOverflow gerará uma exceção STATUS_INSUFFICIENT_RESOURCES. Para obter controle se essa falha de alocação de pool ocorrer, o driver deverá encapsular a chamada para FsRtlPostStackOverflow em uma instrução try-except ou try-finally.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 2000 |
da Plataforma de Destino |
Universal |
cabeçalho | ntifs.h (inclua FltKernel.h, Ntifs.h) |
biblioteca | NtosKrnl.lib |
de DLL |
NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |