timertest.c

来自「本原码为为《嵌入式Linux应用开发详解》一书的配套代码」· C语言 代码 · 共 48 行

C
48
字号
/*定时器应用实例*/
/*TimerTest.c*/
#include  <stdio.h>
#include  <signal.h>
#include  <time.h>
 

#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); 
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?