0
我使用下面的代码来设置闹钟。如何重新启动计时器?
struct itimerval timer;
struct sigaction sa;
sa.sa_handler = handler;
sa.sa_flags = SA_RESETHAND;
timer.it_value.tv_usec = 0;
timer.it_value.tv_sec = 1;
timer.it_interval.tv_sec = 0;
timer.it_interval.tv_usec = 0;
sigaction(SIGALRM, &sa, 0);
setitimer(ITIMER_REAL, &timer, 0);
如何在退出处理函数并进入下面的while循环后重新启动计时器。我是否需要重新初始化所有内容或只需致电setittimer?您使用
while(pause() == -1)
{
// goes in here after handler function.. what needs to go here to restart timer?
}
你会推荐这个函数具有所有的初始化属性,或者只是sigaction和setittimer调用? – Lucas 2012-01-12 08:14:57
@Lucas所有的初始化也是如此。 – 2012-01-12 08:16:10
干杯。很有帮助。 – Lucas 2012-01-12 08:38:55