Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Sistem ini menyediakan tiga mekanisme untuk menonaktifkan APC pada thread saat ini.
Wilayah kritis. Ketika utas berada di dalam wilayah penting, APC pengguna dan APC kernel normalnya tidak dijalankan. APC kernel yang khusus masih tetap dijalankan. Untuk informasi selengkapnya tentang jenis APC ini, lihat jenis APC .
Wilayah yang dijaga. Saat utas berada dalam wilayah yang dijaga, tidak ada satupun APCnya yang dieksekusi.
Menaikkan IRQL saat ini ke APC_LEVEL atau lebih tinggi. Thread yang sedang berjalan di IRQL >= APC_LEVEL berjalan dengan semua APC dinonaktifkan.
Harap dicatat bahwa pengaturan ini hanya berlaku untuk utas saat ini dan tidak memengaruhi perilaku dari utas lain mana pun.
Beberapa rutinitas dukungan driver harus dipanggil dengan jenis APC tertentu yang dinonaktifkan. Misalnya, rutinitas yang memperoleh sumber daya eksekutif (seperti ExAcquireResourceSharedLite) harus dipanggil ketika APC kernel normal dinonaktifkan. Rutinitas lain harus dipanggil dengan jenis APC tertentu yang diaktifkan. Misalnya, rutinitas apa pun yang bergantung pada rutinitas penyelesaian I/O (seperti IoVolumeDeviceToDosName) harus dipanggil dengan APC kernel khusus diaktifkan. Dokumentasi untuk setiap rutinitas menentukan apakah terdapat batasan tertentu pada keadaan pelaksanaan APC.
Driver dapat secara eksplisit memasuki wilayah kritis atau dijaga dengan memanggil rutinitas yang sesuai. Untuk informasi selengkapnya, lihat Wilayah Penting dan Wilayah Yang Dijaga. Driver juga dapat secara eksplisit menaikkan IRQL saat ini ke APC_LEVEL dengan memanggil KeRaiseIrql. Driver kemudian harus menurunkan IRQL ke nilai aslinya dengan memanggil KeLowerIrql. Menggunakan wilayah yang dijaga lebih cepat daripada menaikkan dan menurunkan IRQL saat ini, tetapi wilayah yang dijaga hanya tersedia di Windows Server 2003 dan versi Windows yang lebih baru.
Operasi mutex berikut memiliki efek yang sama seperti memasuki atau meninggalkan wilayah kritis atau terlindungi, atau menaikkan atau menurunkan IRQL saat ini:
Memegang objek mutex secara implisit menempatkan pemegang dalam wilayah penting.
Memegang muteks yang dijaga secara implisit menempatkan pemegang dalam wilayah yang dijaga.
Memegang mutex cepat secara implisit menaikkan IRQL saat ini ke APC_LEVEL.
Untuk informasi selengkapnya tentang objek mutex, lihat Objek Mutex. Untuk informasi selengkapnya tentang mutex yang cepat dan terjaga, lihat Fast Mutexes dan Guarded Mutexes.