Fungsi PoFxSetDeviceIdleTimeout (wdm.h)

Rutinitas PoFxSetDeviceIdleTimeout menentukan interval waktu minimum dari saat komponen terakhir perangkat memasuki kondisi diam hingga ketika kerangka kerja manajemen daya (PoFx) memanggil rutinitas DevicePowerNotRequiredCallback driver.

Sintaks

void PoFxSetDeviceIdleTimeout(
  [in] POHANDLE  Handle,
  [in] ULONGLONG IdleTimeout
);

Parameter

[in] Handle

Handel yang mewakili pendaftaran perangkat dengan PoFx. Driver perangkat sebelumnya menerima handel ini dari rutinitas PoFxRegisterDevice .

[in] IdleTimeout

Interval batas waktu diam dalam 100 unit nanodetik. Untuk informasi selengkapnya, lihat Keterangan.

Nilai kembali

Tidak ada

Keterangan

Rutinitas ini menentukan interval waktu habis bagi PoFx untuk diterapkan ke panggilan mendatang ke rutinitas panggilan balik DevicePowerNotRequiredCallback driver. Secara default, interval waktu habis ini adalah nol, dalam hal ini PoFx mungkin memanggil rutinitas DevicePowerNotRequiredCallback segera setelah perangkat siap untuk beralih ke status Dx berdaya rendah. Namun, driver mungkin lebih suka menunda transisi ini dan menjaga perangkat dalam status daya D0 untuk beberapa interval waktu habis tambahan. Dalam hal ini, jika perangkat menjadi aktif sebelum akhir interval waktu habis, dan oleh karena itu diperlukan untuk tetap dalam status D0, panggilan DevicePowerNotRequiredCallback yang tertunda tidak lagi diperlukan dan dibatalkan oleh PoFx.

Misalnya, untuk meningkatkan performa dan mengurangi keausan, driver perangkat penyimpanan mungkin ingin mencegah drive berputar memasuki D3 dan melambat hingga drive menganggur untuk waktu yang cukup lama. Untuk menyederhanakan implementasi driver ini dari rutinitas panggilan balik DevicePowerNotRequiredCallback , rutinitas PoFxSetDeviceIdleTimeout memungkinkan driver untuk secara otomatis menunda transisi D3 tanpa mengharuskan driver untuk mengatur timer.

Interval waktu habis dimulai ketika semua komponen perangkat menyelesaikan transisi mereka ke kondisi menganggur. Biasanya, PoFx menunggu hingga akhir interval waktu habis untuk memanggil rutinitas DevicePowerNotRequiredCallback . Namun, jika PoFx bersiap untuk memasuki status sistem berdaya rendah, PoFx mungkin mengakhiri interval waktu habis lebih awal. Bagaimanapun, ketika PoFx memanggil rutinitas DevicePowerNotRequiredCallback driver, driver harus beralih ke status Dx berdaya rendah tanpa penundaan lebih lanjut.

Driver perangkat dapat memanggil PoFxSetDeviceIdleTimeout setiap kali perubahan kondisi memerlukan perubahan interval batas waktu diam. Setelah setiap panggilan, interval batas waktu diam baru tetap berlaku sampai driver memanggil PoFxSetDeviceIdleTimeout lagi untuk memperbaruinya.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows 8.
Target Platform Universal
Header wdm.h
Pustaka Ntoskrnl.lib
DLL Ntoskrnl.exe
IRQL <= DISPATCH_LEVEL

Lihat juga

DevicePowerNotRequiredCallback

PoFxRegisterDevice