PFLT_COMPLETED_ASYNC_IO_CALLBACK funzione di callback (fltkernel.h)
Un driver minifilter che avvia un'operazione di I/O asincrona può specificare una routine di tipo PFLT_COMPLETED_ASYNC_IO_CALLBACK routine da chiamare al termine dell'operazione.
Sintassi
PFLT_COMPLETED_ASYNC_IO_CALLBACK PfltCompletedAsyncIoCallback;
void PfltCompletedAsyncIoCallback(
[in] PFLT_CALLBACK_DATA CallbackData,
[in] PFLT_CONTEXT Context
)
{...}
Parametri
[in] CallbackData
Puntatore alla struttura dei dati di callback per l'operazione di I/O.
[in] Context
Puntatore di contesto passato come parametro a FltPerformAsynchronousIo, FltReadFile o FltWriteFile.
Valore restituito
nessuno
Osservazioni
Quando un driver minifilter chiama FltPerformAsynchronousIo, FltReadFile o FltWriteFile per avviare un'operazione di I/O asincrona, il driver minifilter può facoltativamente specificare una routine di callback da chiamare al termine dell'operazione di I/O. Questa operazione viene eseguita specificando una routine di tipo PFLT_COMPLETED_ASYNC_IO_CALLBACK per il parametro CallbackRoutine .
Al termine dell'operazione di I/O, questa routine di callback viene chiamata in un contesto di thread arbitrario, in IRQL <= DISPATCH_LEVEL.
Poiché la routine PFLT_COMPLETED_ASYNC_IO_CALLBACK può essere chiamata in irQL DISPATCH_LEVEL, è soggetta ai vincoli seguenti:
- Non può chiamare in modo sicuro le routine in modalità kernel che richiedono un IRQL inferiore.
- Qualsiasi struttura di dati usata in questa routine deve essere allocata dal pool non di pagine.
- Non può essere reso paginabile.
- Non può acquisire risorse, mutex o mutex veloci. Tuttavia, può acquisire blocchi di rotazione.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Desktop |
Intestazione | fltkernel.h (includere Fltkernel.h) |
IRQL | Vedere La sezione Osservazioni. |