PFLT_COMPLETED_ASYNC_IO_CALLBACK fungsi panggilan balik (fltkernel.h)

Driver minifilter yang memulai operasi I/O asinkron dapat menentukan rutinitas jenis PFLT_COMPLETED_ASYNC_IO_CALLBACK rutin untuk dipanggil ketika operasi selesai.

Sintaks

PFLT_COMPLETED_ASYNC_IO_CALLBACK PfltCompletedAsyncIoCallback;

void PfltCompletedAsyncIoCallback(
  [in] PFLT_CALLBACK_DATA CallbackData,
  [in] PFLT_CONTEXT Context
)
{...}

Parameter

[in] CallbackData

Arahkan ke struktur data panggilan balik untuk operasi I/O.

[in] Context

Penunjuk konteks yang diteruskan driver minifilter sebagai parameter ke FltPerformAsynchronousIo, FltReadFile, atau FltWriteFile.

Nilai kembali

Tidak ada

Keterangan

Ketika driver minifilter memanggil FltPerformAsynchronousIo, FltReadFile atau FltWriteFile untuk memulai operasi I/O asinkron, driver minifilter dapat secara opsional menentukan rutinitas panggilan balik untuk dipanggil ketika operasi I/O selesai. Ini dilakukan dengan menentukan rutinitas jenis PFLT_COMPLETED_ASYNC_IO_CALLBACK untuk parameter CallbackRoutine .

Ketika operasi I/O selesai, rutinitas panggilan balik ini dipanggil dalam konteks utas arbitrer, di IRQL <= DISPATCH_LEVEL.

Karena rutinitas PFLT_COMPLETED_ASYNC_IO_CALLBACK dapat dipanggil di DISPATCH_LEVEL IRQL, rutinitas tersebut tunduk pada batasan berikut:

  • Ini tidak dapat dengan aman memanggil rutinitas mode kernel yang memerlukan IRQL yang lebih rendah.
  • Struktur data apa pun yang digunakan dalam rutinitas ini harus dialokasikan dari kumpulan yang tidak dipagasi.
  • Ini tidak dapat dijadikan halaman.
  • Ini tidak dapat memperoleh sumber daya, mutex, atau mutex cepat. Namun, ia dapat memperoleh kunci spin.

Persyaratan

Persyaratan Nilai
Target Platform Desktop
Header fltkernel.h (termasuk Fltkernel.h)
IRQL Lihat bagian Keterangan.

Lihat juga

FLT_CALLBACK_DATA

FltPerformAsynchronousIo

FltReadFile

FltWriteFile