2015年4月1日 星期三

timer create 之value 搞錯

把timer structure 的member 意義搞反,真是蠢到不行
難怪我一直覺的polling的時間間隔好像怪怪的

struct itimerspec *it=itimerspec;
 memset(evp,0,sizeof(struct sigevent));
 evp->sigev_signo = SIGUSR1;
 evp->sigev_notify = SIGEV_SIGNAL;

timer_create(CLOCK_REALTIME, evp, tid)

interval :polling time的間隔
value: 第一次觸發signal function的時間
用下面的例子解釋,
1秒後觸發 signal function
之後, 每500ms就觸發一次polling function

it->it_interval.tv_sec = 0;
it->it_interval.tv_nsec = 500*1000*1000;
it->it_value.tv_sec = 0;
it->it_value.tv_nsec = 1;



沒有留言:

張貼留言