Поделиться через


Настройка и очистка таймеров

После выделения и инициализации таймера с помощью функции NdisAllocateTimerObject драйвер NDIS 6.0 вызывает функцию NdisSetTimerObject , чтобы задать объект таймера для запуска через указанный интервал или периодически.

Параметр DueTimeобъекта NdisSetTimerObject указывает интервал до срабатывания таймера, а NDIS вызывает связанную функцию NetTimerCallback . Время окончания срока действия выражается в единицах системного времени (100-наносекундные интервалы).

Если параметр MillisecondsPeriodобъекта NdisSetTimerObject не равен нулю, таймер периодически срабатывает, а MillisecondsPeriod указывает интервал времени в миллисекундах, который истекает между каждым срабатыванием периодического таймера и следующим вызовом функции NetTimerCallback .

Драйвер может вызвать функцию NdisCancelTimerObject , чтобы отменить таймер, связанный с предыдущим вызовом функции NdisSetTimerObject . NDIS может по-прежнему вызывать NetTimerCallback , если время ожидания уже истекло до вызова NdisCancelTimerObject.