Condividi tramite


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.

Vedi anche

FLT_CALLBACK_DATA

FltPerformAsynchronousIo

FltReadFile

FltWriteFile