Fungsi KeSetImportanceDpc (wdm.h)
Rutinitas KeSetImportanceDpc menentukan seberapa cepat rutinitas DPC dijalankan.
Sintaks
void KeSetImportanceDpc(
[in, out] PRKDPC Dpc,
[in] KDPC_IMPORTANCE Importance
);
Parameter
[in, out] Dpc
Arahkan ke objek DPC pemanggil, yang sudah diinisialisasi KeInitializeDpc .
[in] Importance
Menentukan salah satu nilai yang ditentukan sistem berikut untuk menentukan perilaku KeInsertQueueDpc dan IoRequestDpc saat salah satu rutinitas digunakan untuk mengantre DPC.
LowImportance
Tempatkan DPC di akhir antrean DPC, dan jangan mulai memproses antrean.
MediumImportance
Tempatkan DPC di akhir antrean DPC. Jika DPC ditetapkan ke antrean DPC prosesor saat ini, mulailah memproses antrean segera. MediumImportance adalah nilai default untuk Kepentingan.
MediumHighImportance
Tempatkan DPC di akhir antrean DPC, dan mulai pemrosesan antrean segera. MediumHighImportance hanya tersedia di Windows Vista dan versi Windows yang lebih baru.
HighImportance
Tempatkan DPC di awal antrean DPC, dan mulai pemrosesan antrean segera.
Nilai kembali
Tidak ada
Keterangan
Rutinitas KeSetImportanceDpc memengaruhi seberapa cepat DPC dijalankan setelah diantrekan dengan menentukan:
- Lokasi DPC dalam antrean DPC. Biasanya, rutinitas KeInsertQueueDpc dan IoRequestDpc menempatkan DPC di akhir antrean. Jika driver pertama kali memanggil KeSetImportanceDpc dengan Kepentingan = HighImportance, KeInsertQueueDpc dan IoRequestDpc akan menempatkan DPC di awal antrean.
- Ketika sistem mulai memproses antrean DPC. Biasanya, KeInsertQueueDpc dan IoRequestDpc segera mulai memproses antrean DPC untuk prosesor saat ini. Driver dapat menentukan nilai yang berbeda untuk Kepentingan untuk mengubah perilaku ini.
Untuk Windows Vista dan versi sistem operasi Windows yang lebih baru, Anda dapat menggunakan KeSetImportanceDpc untuk DPC utas. Jika penelepon menetapkan Kepentingan ke HighImportance, DPC ditempatkan di awal antrean; jika tidak, itu ditempatkan di akhir. Rutinitas tidak mempengaruhi ketika antrean DPC utas diproses. DPC utas selalu diproses oleh utas khusus di IRQL = PASSIVE_LEVEL. Untuk informasi selengkapnya tentang DPC utas, lihat Pengantar DPC Utas.
Perhatikan bahwa driver harus memanggil KeSetImportanceDpc sebelum memanggil KeInsertQueueDpc dan IoRequestDpc untuk memiliki efek apa pun.
Untuk informasi selengkapnya tentang cara sistem memproses antrean DPC, lihat Organisasi Antrean DPC.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia dimulai dengan Windows 2000. |
Target Platform | Universal |
Header | wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h) |
Pustaka | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Tingkat apa pun |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk