Fungsi PoStartDeviceBusy (ntifs.h)

Rutinitas PoStartDeviceBusy menandai dimulainya periode waktu di mana perangkat sibuk.

Sintaks

void PoStartDeviceBusy(
  [in, out] PULONG IdlePointer
);

Parameter

[in, out] IdlePointer

Penunjuk ke penghitung diam. Ini adalah nilai pointer yang sebelumnya dikembalikan oleh rutinitas PoRegisterDeviceForIdleDetection . Karena PoRegisterDeviceForIdleDetection mungkin mengembalikan penunjuk NULL, pemanggil harus memverifikasi bahwa penunjuk bukan NULL sebelum memanggil PoStartDeviceBusy.

Nilai kembali

Tidak ada

Keterangan

Rutinitas PoStartDeviceBusy dan PoEndDeviceBusy menandai awal dan akhir periode waktu di mana perangkat sibuk. Setiap panggilan ke PoStartDeviceBusy harus diikuti dengan panggilan yang sesuai ke PoEndDeviceBusy.

Untuk setiap perangkat, manajer daya mempertahankan hitungan jumlah panggilan PoStartDeviceBusy yang belum menerima panggilan PoEndDeviceBusy yang sesuai. Panggilan PoStartDeviceBusy menaikkan jumlah sibuk satu per satu. Panggilan PoEndDeviceBusy mengurangi jumlah sibuk satu per satu. Jumlah sibuk bukan nol menonaktifkan penghitung diam untuk perangkat. Setelah jumlah sibuk mencapai nol, manajer daya mengatur ulang penghitung diam ke periode waktu habis dan mengaktifkan penghitung.

Daripada menggunakan rutinitas PoStartDeviceBusy dan PoEndDeviceBusy untuk mengatur ulang penghitung diam, Anda dapat memanggil rutinitas PoSetDeviceBusyEx (atau makro PoSetDeviceBusy ). Untuk menonaktifkan penghitung diam selama periode sibuk yang lama, driver dapat memanggil rutinitas PoRegisterDeviceForIdleDetection untuk menonaktifkan dan mengaktifkan pemberitahuan menganggur di awal dan akhir periode sibuk. Namun, PoStartDeviceBusy dan PoEndDeviceBusy biasanya lebih nyaman digunakan untuk tujuan ini, dan Anda harus mempertimbangkan untuk menggunakan rutinitas ini dalam kode baru yang Anda tulis untuk Windows 7 dan versi Windows yang lebih baru.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 7.
Target Platform Universal
Header ntifs.h (termasuk Wdm.h, Ntddk.h, Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Tingkat apa pun

Lihat juga

PoEndDeviceBusy

PoRegisterDeviceForIdleDetection

PoSetDeviceBusy