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