Получить информацию о таймере
#include <sys/neutrino.h>
int TimerInfo( pid_t pid,
timer_t id,
int flags,
struct _timer_info *info );
int TimerInfo_r( pid_t pid,
timer_t id,
int flags,
struct _timer_info *info );
- pid
- Идентификатор процесса, для которого необходимо получить информацию о таймере.
- id
- Идентификатор таймера, возвращенный функцией TimerCreate().
- flags
- Поддерживаются следующие флаги:
- _NTO_TIMER_SEARCH
- если указан этот флаг, а запрашиваемый идентификатор таймера не существует, возвращается информация о следующем next идентификаторе таймера. Такой механизм позволяет найти все таймеры в процессе.
- _NTO_TIMER_RESET_OVERRUNS
- сброс счетчика переполнения до нуля в структуре struct _timer_info (через поле overruns структуры возвращается текущее значение счетчика).
- info
- Указатель на структуру struct _timer_info, в которой будет сохранена информация об указанном таймере.
libc
Эти вызовы ядра получают информацию о ранее созданном таймере с указанным идентификатором и сохраняют информацию в буфере info.
Функции TimerInfo() и TimerInfo_r() идентичны, но по разному указывают на ошибки.
Получить более подробную информацию можно в описании на функцию TimerCreate().
Это неблокирующие вызовы.
- TimerInfo()
- Идентификатор таймера, для которого получена информация. Если возникла ошибка функция возвращает
-1
, код ошибки записывается в errno.
- TimerInfo_r()
- Идентификатор таймера, для которого получена информация. Функция НЕ устанавливает errno. При возникновении ошибки функция возвращает один из представленных ниже кодов.
- EINVAL
- Не существует таймера с идентификатором id.
- ESRCH
- Не существует процесса с идентификатором pid.
ЗОСРВ «Нейтрино»
- Нет
- Обработчик прерываний
- Нет
- Обработчик сигналов
- Да
- В потоке
- Да
struct sigevent, timer_t, struct _timer_info, timer_getexpstatus(), timer_getoverrun(), timer_gettime(), TimerCreate()
Предыдущий раздел: Описание API системной библиотеки