uIP 1.0
Структуры данных | Файлы | Функции
Библиотека таймера

Библиотека таймера предоставляет функции для установки, сброса и перезапуска таймеров, и для проверки - истек ли установленный интервал таймера. Подробнее...

Структуры данных

struct  timer
 Таймер. Подробнее...

Файлы

файл  timer.h
 

Заголовочный файл библиотеки таймера.


файл  timer.c
 

Библиотечная реализация таймера.


Функции

void timer_set (struct timer *t, clock_time_t interval)
 Установка таймера.
void timer_reset (struct timer *t)
 Сброс таймера на тот же самый интервал времени.
void timer_restart (struct timer *t)
 Рестарт таймера от текущей точки времени.
int timer_expired (struct timer *t)
 Проверка - истек ли интервал таймера.

Подробное описание

Библиотека таймера предоставляет функции для установки, сброса и перезапуска таймеров, и для проверки - истек ли установленный интервал таймера.

Приложение должно само проверять, истек ли таймер, это не делается автоматически.

Таймер декларирован как структура struct timer и весь доступ к таймеру делается по указателю к декларированному таймеру.

Заметки:
Библиотека таймера использует Clock library (библиотеку тактов) для измерения времени. Интервалы должны быть указаны в формате, используемом в библиотеке тактов.

Функции

int timer_expired ( struct timer t)

Проверка - истек ли интервал таймера.

Эта функция проверяет, истек ли таймер, и возвратит true (истек) или false (еще не истек) в зависимости от его состояния.

Аргументы:
tУказатель на таймер.
Возвращает:
Не 0, если установленное время таймера истекло, иначе 0.
Примеры:
dhcpc.c, example-mainloop-with-arp.c и example-mainloop-without-arp.c.

См. определение в файле timer.c строка 123

Перекрестные ссылки clock_time().

void timer_reset ( struct timer t)

Сброс таймера на тот же самый интервал времени.

Эта функция запускает таймер заново на тот же интервал, который был установлен функцией timer_set(). Стартовая точка интервала та же самая, которая была в тот момент, когда таймер последний раз истек. Таким образом, функция делает таймер стабильным во времени, в отличие от функции timer_restart().

Аргументы:
tУказатель A pointer to the timer.
См. также:
timer_restart()
Примеры:
example-mainloop-with-arp.c и example-mainloop-without-arp.c.

См. определение в файле timer.c строка 85

void timer_restart ( struct timer t)

Рестарт таймера от текущей точки времени.

Эта функция перезапускает таймер на тот же интервал, который был установлен вызовом функции timer_set(). Таймер запустится начиная с текущего времени.

Заметки:
Периодический таймер имеет дрожание интервала, если эта функция используется для его сброса. Для периодических таймеров вместо этой функции используйте функцию timer_reset().
Аргументы:
tУказатель на таймер.
См. также:
timer_reset()

См. определение в файле timer.c строка 106

Перекрестные ссылки clock_time().

void timer_set ( struct timer t,
clock_time_t  interval 
)

Установка таймера.

Эта функция используется для установки таймера на некоторое время в будущем. Функция timer_expired() будет вычислена как true после того, как время таймера истечет.

Аргументы:
tУказатель на таймер
intervalИнтервал времени, на которое настроен таймер.
Примеры:
dhcpc.c, example-mainloop-with-arp.c и example-mainloop-without-arp.c.

См. определение в файле timer.c строка 65

Перекрестные ссылки clock_time().