URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 4434
[ Назад ]

Исходное сообщение
"пример работы с функцией setitimer()"

Отправлено Natan , 04-Июл-05 10:01 
Приветствую.

Не могли бы вы привести пример кода с функцией setitimer(), чтобы лкчше понять работу и области применения.

Спасибо.


Содержание

Сообщения в этом обсуждении
"пример работы с функцией setitimer()"
Отправлено DEC , 04-Июл-05 10:15 
Выдержки из кода:

void check_alarm(int sign){
  //handle timer
}

int main(int argc, char *argv[]){
struct sigaction alarm_act;
struct itimerval alarm_timer;

bzero(&alarm_act, sizeof(struct sigaction));
alarm_act.sa_handler=&check_alarm;
sigaction(SIGALRM, &alarm_act, NULL));

alarm_timer.it_interval.tv_sec=60;
alarm_timer.it_interval.tv_usec=0;
alarm_timer.it_value.tv_sec=1800;
alarm_timer.it_value.tv_usec=0;

if (setitimer(ITIMER_REAL, &alarm_timer, NULL)){
fprintf (stderr, "Cannot start alarm timer - %s\n", strerror(errno));
return -1;
}
//start mainloop

return 0;
}