RTX – расширение реального времени для Windows NT

Таймеры


Таймеры RTX являются скрытыми потоками-обработчиками, которые получают уведомление от RTSS о прохождении определенного интервала времени и вызывают процедуру-обработчик таймера, указанную при его создании.  

При создании таймер ассоциируется с определенными часами в системе, по их отсчету срабатывает таймер. Таймер начинает отсчет после того, как был установлен. После того, как таймер сработал и процедура-обработчик возвратила управление, таймер может быть автоматически переустановлен. Таймеры, у которых интервал повторения установлен в 0, являются “одноразовыми” и выполняют процедуру-обработчик один раз. Таймеры, у которых установлен допустимый интервал повторения, будут выполнять процедуру-обработчик с заданным интервалом.

API

Следующие функции служат для доступа к RTX-службам таймеров:

RtCreateTimer –создает таймер, связанный с указанными часами. RtDeleteTimer – уничтожает ранее созданный таймер

RtCancelTimer – прекращает срабатывание указанного таймера

RtSetTimer – устанавливает абсолютное время срабатывания и интервал повтора для указанного таймера

RtSetTimerRelative - устанавливает относительное время срабатывания и интервал повтора для указанного таймера

Отношение к таймерам в Windows NT

Таймеры в RTX не являются объектами синхронизации. Это значит, что потоки не могут использовать Waifor.. функции с хэндлами RTX таймеров. Это отличает их от таймеров Windows NT, являющихся объектами, которые поток может ожидать или получать уведомление.

Программирование в Win32 и RTSS подсистемах

Если приложение должно информировать другие потоки о срабатывании таймера, оно должно использовать соответствующий объект уведомления (notification object) в процедуре-обработчике таймера.

| |



Содержание раздела