Bagikan melalui


Fungsi IoInitializeTimer (wdm.h)

Rutinitas IoInitializeTimer menyiapkan rutinitas IoTimer yang disediakan driver yang terkait dengan objek perangkat tertentu.

Sintaks

NTSTATUS IoInitializeTimer(
  [in]           PDEVICE_OBJECT         DeviceObject,
  [in]           PIO_TIMER_ROUTINE      TimerRoutine,
  [in, optional] __drv_aliasesMem PVOID Context
);

Parameter

[in] DeviceObject

Pointer ke objek perangkat yang mewakili perangkat tempat operasi I/O dapat kehabisan waktu.

[in] TimerRoutine

Arahkan ke rutinitas IoTimer yang disediakan driver.

[in, optional] Context

Arahkan ke konteks yang ditentukan driver yang rutinitas IoTimer-nya akan dipanggil.

Nilai kembali

IoInitializeTimer mengembalikan STATUS_SUCCESS jika rutinitas IoTimer disiapkan.

Keterangan

IoInitializeTimer harus dipanggil hanya sekali per objek perangkat.

Rutinitas IoTimer driver dipanggil sekali per detik setelah driver mengaktifkan timer dengan memanggil IoStartTimer. Driver dapat menonaktifkan timer dengan memanggil IoStopTimer dan dapat mengaktifkannya kembali dengan IoStartTimer.

Rutinitas IoTimer driver dipanggil di IRQL = DISPATCH_LEVEL dan oleh karena itu tidak boleh berisi kode yang dapat dipaginasi.

Ketika timer berjalan, manajer I/O memanggil rutinitas IoTimer yang disediakan driver sekali per detik. Driver yang rutinitas waktu habis harus dipanggil pada interval variabel atau pada interval granularitas yang lebih halus dapat mengatur rutinitas CustomTimerDpc dan menggunakan rutinitas Timer KeXxx.

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 PASSIVE_LEVEL
Aturan kepatuhan DDI HwStorPortProhibitedDDIs(storport), IrqlIoPassive5(wdm), PowerIrpDDis(wdm)

Lihat juga

IoStartTimer

IoStopTimer

IoTimer

KeInitializeTimer

KeSetTimer