getitimer()

Получить значение интервального таймера

Прототип:

#include <sys/time.h>
int getitimer( int which,
struct itimerval *value );

Аргументы:

which
Тип интервального таймера, значение которого необходимо получить. В настоящее время тип должен быть ITIMER_REAL.
value
Указатель на структуру типа struct itimerval, в которую функция запишет значение интервального таймера.

Библиотека:

libc

Описание:

Система предоставляет каждому процессу несколько типов интервальных таймеров, определенных в <sys/time.h>. Функция getitimer() сохраняет текущее значение таймера с типом, указанным в which, в структуру, указанную вvalue.

Значение таймера определено в структуре struct itimerval. Установка значения it_value в 0 выключит (остановит) таймер не зависимо от значения it_interval. Установка значения it_interval в 0 выключит таймер после его следующего истечения (при условии, что значение it_value не равно 0).

Значения времени, которые меньше разрешения системных часов, округляются до разрешения системных часов.

Типы интервальных таймеров:

ITIMER_REAL
Декрементируется (истекает) в реальном времени. По истечении времени будет доставлен сигнал SIGALRM.

Возвращаемое значение:

0
Успешное завершение.
-1
Возникла ошибка. Код ошибки записан в errno.

Коды ошибок:

EINVAL
Переданное количество секунд превышает 100,000,000, количество микросекунд превышает или равно 1,000,000, или параметр which не распознан.

Классификация:

POSIX 1003.1 X/Open Systems Interfaces Extension

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

struct itimerval, alarm(), gettimeofday(), pthread_attr_setscope(), pthread_sigmask(), setitimer(), sigprocmask(), sleep(), sysconf()




Предыдущий раздел: Описание API системной библиотеки