- 论坛徽章:
- 0
|
谢谢。
SWORD32 CreateTimer(WORD32 dwSecond, WORD32 dwNsecond, WORD32 dwId, void (*pFunc)(sigval_t))
{
timer_t tid;
struct sigevent se;
struct itimerspec ts, ots;
memset(&se, 0, sizeof(struct sigevent));
se.sigev_notify = SIGEV_THREAD;
se.sigev_notify_function = pFunc;
se.sigev_value.sival_int = dwId;
if(timer_create(CLOCK_REALTIME, &se, &tid) < 0)
{
perror ("timer_creat");
return FAILED;
}
puts("timer_create successfully.");
ts.it_value.tv_sec = dwSecond;
ts.it_value.tv_nsec = dwNsecond;
ts.it_interval.tv_sec = dwSecond;
ts.it_interval.tv_nsec = dwNsecond;
if(timer_settime(tid, TIMER_ABSTIME, &ts, &ots) < 0)
{
perror("timer_settime");
return FAILED;
}
return SUCCESS;
}
还有结构体struct sigevent怎样填写??? |
|