Makro PoSetDeviceBusy (wdm.h)

Makro PoSetDeviceBusy memberi tahu manajer daya bahwa perangkat yang terkait dengan IdlePointer sibuk.

Sintaks

void PoSetDeviceBusy(
  [in, out]  IdlePointer
);

Parameter

[in, out] IdlePointer

Menentukan penunjuk diam non-NULL yang sebelumnya dikembalikan oleh PoRegisterDeviceForIdleDetection. Perhatikan bahwa PoRegisterDeviceForIdleDetection mungkin mengembalikan penunjuk NULL . Penelepon PoSetDeviceBusy harus memverifikasi bahwa pointer non-NULL sebelum meneruskannya ke PoSetDeviceBusy.

Mengembalikan nilai

Tidak ada

Keterangan

Rutinitas PoSetDeviceBusyEx adalah pengganti langsung untuk makro PoSetDeviceBusy . Jika Anda menulis kode driver baru untuk Windows Vista dengan Paket Layanan 1 (SP1) dan versi Windows yang lebih baru, panggil PoSetDeviceBusyEx alih-alih PoSetDeviceBusy.

Driver menggunakan PoSetDeviceBusy bersama dengan PoRegisterDeviceForIdleDetection untuk mengaktifkan deteksi diam sistem untuk perangkatnya. Jika perangkat yang terdaftar untuk deteksi diam menjadi diam, manajer daya mengirimkan permintaan IRP_MN_SET_POWER untuk menempatkan perangkat dalam status tidur yang diminta.

PoSetDeviceBusy melaporkan bahwa perangkat sibuk, sehingga manajer daya dapat memulai ulang penghitungan mundur diamnya. Jika perangkat tidak dinyalakan, PoSetDeviceBusy tidak mengubah statusnya. Artinya, itu tidak menyebabkan sistem mengirim permintaan power-on.

Driver harus memanggil PoSetDeviceBusy pada setiap permintaan I/O.

Persyaratan

Persyaratan Nilai
Header wdm.h (termasuk Wdm.h)
IRQL Tingkat apa pun