www.pudn.com > 嵌入式linux9应用开发祥解.rar > TimerTest.C


/*定时器应用实例*/ 
/*TimerTest.c*/ 
#include   
#include   
#include   
  
 
#define  PROMPT "时间已经过去了3秒钟\n\a"  
 
char *prompt=PROMPT;  
unsigned int len;  
 
/*信号处理函数*/ 
void prompt_info(int signo)  
{  
  write(STDERR_FILENO,prompt,len);  
}  
 
/*初始化信号*/ 
void init_sigaction(void)  
{  
  struct sigaction act;  
  act.sa_handler=prompt_info;  
  act.sa_flags=0;  
  sigemptyset(&act.sa_mask);  
  sigaction(SIGPROF,&act,NULL);  
}  
 
/*初始化代码*/ 
void init_time()  
{  
  struct itimerval value;  
/*定时3秒钟*/ 
  value.it_value.tv_sec=3;  
  value.it_value.tv_usec=0;  
  value.it_interval=value.it_value;  
  setitimer(ITIMER_PROF,&value,NULL);  
}  
 
int main()  
{  
 len=strlen(prompt);  
 init_sigaction();  
 init_time();  
 while(1);  
 exit(0);  
}