EVT_SERCX_FILECLEANUP fungsi panggilan balik (sercx.h)

Fungsi panggilan balik peristiwa EvtSerCxFileCleanup memberi tahu driver pengontrol serial bahwa klien telah menutup handel terakhir ke objek file yang mewakili perangkat pengontrol serial.

Sintaks

EVT_SERCX_FILECLEANUP EvtSercxFilecleanup;

void EvtSercxFilecleanup(
  [in] WDFDEVICE Device
)
{...}

Parameter

[in] Device

Handel WDFDEVICE ke objek perangkat kerangka kerja yang mewakili pengontrol serial.

Mengembalikan nilai

Tidak ada

Keterangan

Fungsi ini dapat membatalkan alokasi sumber daya sistem tertentu yang sebelumnya dialokasikan driver untuk masa pakai objek file. Bersama dengan fungsi EvtSerCxFileClose , fungsi EvtSerCxFileCleanup harus menghapus perangkat pengontrol serial dari status di mana ia siap untuk menerima dan mengirimkan data. Fungsi EvtSerCxFileCleanup harus berfokus secara khusus pada tugas pembersihan, seperti membatalkan alokasi memori.

Jika driver pengontrol serial sebelumnya mengalokasikan memori hanya untuk masa pakai objek file yang sekarang ditutup, driver harus membatalkan alokasi memori ini baik dalam fungsi EvtSerCxFileCleanup atau EvtSerCxFileClose .

Biasanya, gangguan harus dinonaktifkan hanya setelah objek file dirilis. Dengan demikian, fungsi EvtSerCxFileClose , dan bukan fungsi EvtSerCxFileCleanup , harus menonaktifkan gangguan.

SerCx memanggil fungsi EvtSerCxFileCleanup driver setelah handel terakhir ke objek file ditutup. Karena permintaan I/O yang luar biasa, objek ini mungkin belum dirilis. Setelah panggilan ini, driver tidak menerima permintaan baru untuk operasi I/O.

SerCx memanggil fungsi EvtSerCxFileClose driver setelah memanggil fungsi EvtSerCxFileCleanup driver. SerCx memanggil fungsi EvtSerCxFileClose setelah objek file dirilis, yang hanya terjadi ketika semua permintaan I/O yang beredar diselesaikan atau dibatalkan.

Fungsi EvtSerCxFileCleanup bersifat opsional. Jika driver pengontrol serial tidak menerapkan fungsi ini, fungsi EvtSerCxFileClose driver harus menangani semua tugas pembersihan yang diperlukan setelah handel file terakhir ditutup.

Untuk mendaftarkan fungsi panggilan balik EvtSerCxFileCleanup , driver harus memanggil metode SerCxInitialize .

Untuk informasi selengkapnya, lihat Objek File Kerangka Kerja.

Contoh

Jenis fungsi untuk panggilan balik ini dinyatakan dalam Sercx.h, sebagai berikut.

typedef VOID
  EVT_SERCX_FILECLEANUP(
    __in WDFDEVICE Device
    );

Untuk menentukan fungsi panggilan balik EvtSerCxFileCleanup yang diberi nama MyEvtSerCxFileCleanup, Anda harus terlebih dahulu memberikan deklarasi fungsi yang diperlukan Pemverifikasi Driver Statis (SDV) dan alat verifikasi lainnya, sebagai berikut.

EVT_SERCX_FILECLEANUP MyEvtSerCxFileCleanup;

Kemudian, terapkan fungsi panggilan balik Anda sebagai berikut.

VOID
  MyEvtSerCxFileCleanup(
    __in WDFDEVICE Device
    )
{ ... }

Untuk informasi selengkapnya tentang persyaratan SDV untuk deklarasi fungsi, lihat Mendeklarasikan Fungsi Menggunakan Jenis Peran Fungsi untuk Driver KMDF.

Persyaratan

   
Klien minimum yang didukung Tersedia dimulai dengan Windows 8.
Target Platform Desktop
Header sercx.h
IRQL Dipanggil di IRQL <= DISPATCH_LEVEL

Lihat juga

EvtSerCxFileClose

SerCxInitialize