Fungsi IoAcquireCancelSpinLock (wdm.h)
Rutinitas IoAcquireCancelSpinLock menyinkronkan transisi status yang dapat dibatalkan untuk IRP dengan cara multiprosesor aman.
Sintaks
void IoAcquireCancelSpinLock(
PKIRQL Irql
);
Parameter
Irql
[keluar] Arahkan ke variabel untuk menyimpan IRQL saat ini untuk panggilan berikutnya ke IoReleaseCancelSpinLock. Biasanya, Irql disimpan di tumpukan sebagai variabel lokal.
Nilai kembali
Tidak ada
Keterangan
Driver yang menggunakan antrean perangkat yang disediakan manajer I/O di objek perangkat harus memegang kunci spin pembatalan setiap kali mengubah status IRP yang dapat dibatalkan dengan IoSetCancelRoutine.
Driver yang mengelola antrean IRP sendiri tidak perlu menahan kunci putar batal saat memanggil IoSetCancelRoutine.
Pemegang kunci putar batal harus segera melepaskannya dengan memanggil IoReleaseCancelSpinLock.
Rutinitas Batal yang disediakan pengemudi dipanggil dengan kunci putar batal ditahan. Ini harus melepaskan kunci putar batal ketika telah menyelesaikan IRP untuk dibatalkan.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 2000 |
Header | wdm.h |
IRQL | <=DISPATCH_LEVEL |
Aturan kepatuhan DDI | CancelSpinLock(storport), CancelSpinLock(wdm), CancelSpinlockRelease(wdm), HwStorPortProhibitedDDIs(storport), SpinLockSafe(storport), SpinLockSafe(wdm) |