setitimer.c

来自「关于进程间通信的代码集锦2」· C语言 代码 · 共 41 行

C
41
字号
#include <signal.h>#include <unistd.h>#include <sys/time.h>void user_func(int sig){	if(sig==SIGALRM)	{		printf("catch a signal SIGALRM\n");	}	else if(sig==SIGVTALRM)	{		printf("catch a signal SIGVTALRM\n");	}	}int main(){	struct itimerval value,ovalue,value2;	printf("Process id is = %d\n",getpid());		signal(SIGALRM,user_func);		signal(SIGVTALRM,user_func);		value.it_value.tv_sec=1;	value.it_value.tv_usec=0;	value.it_interval.tv_sec=1;	value.it_interval.tv_usec=0;	setitimer(ITIMER_REAL,&value,&ovalue);	value2.it_value.tv_sec=1;	value2.it_value.tv_usec=500000;	value2.it_interval.tv_sec=1;	value2.it_interval.tv_usec=500000;		setitimer(ITIMER_VIRTUAL,&value,&ovalue);	while(1);		return 0;}

⌨️ 快捷键说明

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