Привет всем
я пытаюсь использовать sigaction () однако безуспешно
это мой код:
int main()
{
struct sigaction act, oact;
act.sa_handler = (void *)g;
sigaction(SIGVTALRM,&act,&oact);
struct itimerval tv;
tv.it_value.tv_sec = 2; //time of first timer
tv.it_value.tv_usec = 0; //time of first timer
tv.it_interval.tv_sec = 2; //time of all timers but the first one
tv.it_interval.tv_usec = 0; //time of all timers but the first one
setitimer(ITIMER_VIRTUAL, &tv, NULL);
for (;;);
}
это г ():
void g( void ){
printf("I'M NOT IN G!!");
for (;;);
}
когда я запускаю код, я застреваю в первом цикле for (;;), даже не доходя до g ().
почему бы мне не добраться до g (), если я определил его как функцию, обрабатывающую сигнал?
спасибо