Funzione FsRtlPostStackOverflow (ntifs.h)
La routine FsRtlPostStackOverflow invia un elemento di overflow dello stack al thread di overflow dello stack.
Sintassi
void FsRtlPostStackOverflow(
[in] PVOID Context,
[in] PKEVENT Event,
[in] PFSRTL_STACK_OVERFLOW_ROUTINE StackOverflowRoutine
);
Parametri
[in] Context
Puntatore di contesto da passare alla routine di callback dell'overflow dello stack.
[in] Event
Puntatore a un evento di notifica allocato dal chiamante da passare alla routine di callback di overflow dello stack. Deve essere stato inizializzato come non assegnato chiamando KeInitializeEvent.
[in] StackOverflowRoutine
Puntatore a una routine di callback da richiamare durante l'elaborazione della richiesta nel thread di overflow.
Valore restituito
Nessuno
Osservazioni
Un file system chiama in genere FsRtlPostStackOverflow durante un'operazione di I/O di file quando la quantità di spazio dello stack rimanente restituito da IoGetRemainingStackSize è inferiore alla soglia di overflow dello stack del file system per l'operazione.
FsRtlPostStackOverflow invia la richiesta di I/O a una coda di lavoro di overflow dello stack speciale. Al termine dell'operazione di I/O, l' evento
I driver di filtro del file system devono usare IoQueueWorkItem anziché FsRtlPostStackOverflow, perché IoQueueWorkItem garantisce che l'oggetto dispositivo associato all'elemento di lavoro specificato sia disponibile per l'elaborazione dell'elemento di lavoro.
Se si verifica un errore di allocazione del pool, FsRtlPostStackOverflow genera un'eccezione STATUS_INSUFFICIENT_RESOURCES. Per controllare se si verifica questo errore di allocazione del pool, il driver deve eseguire il wrapping della chiamata a FsRtlPostStackOverflow in un 'istruzione try-except o try-finally.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 2000 |
piattaforma di destinazione | Universale |
intestazione |
ntifs.h (include FltKernel.h, Ntifs.h) |
libreria |
NtosKrnl.lib |
dll | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |