Fungsi NdisCancelTimerObject (ndis.h)

Fungsi NdisCancelTimerObject membatalkan objek timer yang terkait dengan panggilan sebelumnya ke fungsi NdisSetTimerObject .

Sintaks

BOOLEAN NdisCancelTimerObject(
  [in] NDIS_HANDLE TimerObject
);

Parameter

[in] TimerObject

Handel ke objek timer yang disediakan NDIS saat driver memanggil Fungsi NdisAllocateTimerObject .

Nilai kembali

NdisCancelTimerObject mengembalikan TRUE jika objek timer yang ditentukan berada dalam antrean timer sistem; jika tidak, ia mengembalikan FALSE.

Keterangan

Panggilan ke NdisCancelTimerObject membatalkan eksekusi fungsi NetTimerCallback , asalkan interval batas waktu terakhir yang ditentukan belum kedaluwarsa.

Driver NDIS harus memanggil NdisCancelTimerObject terlebih dahulu ketika mereka menghentikan atau membongkar untuk memastikan bahwa fungsi NetTimerCallback tidak mencoba mengakses sumber daya yang telah dirilis driver.

Jika nilai bukan nol ditentukan dalam parameter MillisecondsPeriod dari fungsi NdisSetTimerObject , timer dikenal sebagai timer berkala. Jika nilai nol ditentukan dalam parameter MillisecondsPeriod , timer dikenal sebagai timer satu bidikan. Poin-poin berikut berlaku untuk membatalkan kedua jenis timer:

  • Jika pemanggil NdisCancelTimerObject membatalkan timer berkala, pemanggil harus berjalan di IRQL = PASSIVE_LEVEL. Jika tidak, pemanggil NdisCancelTimerObject harus berjalan di IRQL <= DISPATCH_LEVEL.
  • Jika pemanggil NdisCancelTimerObject membatalkan timer berkala, NdisCancelTimerObject memanggil KeFlushQueuedDpcs untuk memastikan bahwa timer saat ini tidak berjalan. Oleh karena itu, pemanggil tidak diharuskan memiliki mekanisme sinkronisasi terpisah untuk memastikan bahwa timer saat ini tidak dijalankan pada prosesor lain.

    Jika pemanggil NdisCancelTimerObject membatalkan timer satu bidikan, pemanggil diharuskan memiliki mekanisme sinkronisasi terpisah untuk memastikan timer saat ini tidak berjalan pada prosesor lain. Misalnya, pemanggil dapat memanggil NDIS_WAIT_FOR_MUTEX untuk menunggu utas timer memberi sinyal objek mutex saat utas akan selesai.

    Untuk informasi selengkapnya, lihat Sinkronisasi dan Pemberitahuan di Driver Jaringan.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Didukung di NDIS 6.0 dan yang lebih baru.
Target Platform Universal
Header ndis.h (termasuk Ndis.h)
Pustaka Ndis.lib
IRQL Lihat bagian Keterangan
Aturan kepatuhan DDI Irql_Timer_Function(ndis), PeriodicTimer(ndis)

Lihat juga

NdisAllocateTimerObject

NdisSetTimerObject

NetTimerCallback