#include <unistd.h>
#include <stdio.h>
#include <signal.h>
#include <time.h>
#define TRUE (1)
void testTimerSign();
void SignHandler(int iSignNo);
void printTime();
int main() {
testTimerSign();
while(TRUE) {
sleep(1);
}
return 0;
}
void SignHandler(int iSignNo){
printTime();
if(iSignNo == SIGUSR1){
printf("Capture sign No.=SIGUSR1\n");
}else{
printf("Capture sign No.=%d\n",iSignNo);
}
}
void testTimerSign(){
struct sigevent evp;
struct itimerspec ts;
timer_t timer;
int ret;
evp.sigev_value.sival_ptr = &timer;
evp.sigev_notify = SIGEV_SIGNAL;
evp.sigev_signo = SIGUSR1;
signal(evp.sigev_signo, SignHandler);
ret = timer_create(CLOCK_REALTIME, &evp, &timer);
if(ret) {
perror("timer_create");
}
ts.it_interval.tv_sec = 1; // the spacing t
【C程序】timer_create怎么用?定时器使用例子
最新推荐文章于 2024-02-05 20:31:06 发布