Linux¶¨Ê±Æ÷——setitimer()
setitimer()ÊDZȽϾ«×¼µÄ¶¨Ê±Æ÷£¬ÊÇLinuxµÄAPI
ÒÔÏ´úÂëÊǸöµ¹¼ÆÊ±Àý×Ó£º
#include <signal.h>
#include <sys/time.h>
static int time_count=30;
static void sigalrm_handler(int sig)
{
time_count--;
printf("timer signal.. %d\n", time_count);
}
struct itimerval v; //¶¨Ê±Æ÷½á¹¹Ìå
time_count=10; //Ôٴγõʼ»¯
signal(SIGALRM, sigalrm_handler);//°ó¶¨Ðźź¯Êý
v.it_value.tv_sec=1;
v.it_value.tv_usec=0;
v.it_interval.tv_sec=1;//¼ä¸ô1s
v.it_interval.tv_usec=0;
setitimer(ITIMER_REAL,&v,NULL); //½á¹¹Ì幨Áª£¬start
...
...
//=========½áÊø´Ë¶¨Ê±Æ÷=====================
v.it_value.tv_sec=0;
v.it_value.tv_usec=0;
v.it_interval.tv_sec=0;
v.it_interval.tv_usec=0;
setitimer(ITIMER_REAL,&v,NULL);
ÔÀí¼ÈÊÇ 1s·¢ËÍSIGALRMÐźÅÒ»´Î£¬½«ÆäÖµÖÃÁ㼴Ϊ¹Ø±Õ£¬²»ÔÚ·¢ËÍÐźÅ
Ïà¹ØÎĵµ£º
Ò»¡¢ÒýÑÔ£º
±¾ÎĵµµÄÄÚÈݴ󲿷ÝÄÚÈݶ¼ÊÇ´ÓÍøÉÏÊÕ¼¯¶øÀ´£¬È»ºóÅäºÏһЩеĽØÍ¼£¨Äں˰汾£ºV2.4.19£©¡£ÔÚÿһÅäÖÃÏîºó»áÓÐÒ»¸öÑ¡ÔñÖ¸ÄϵIJ¿·Ý£¬ÓÃÀ´Ö¸µ¼´ó¼ÒÔõôÑù¸ù¾Ý×Ô¼ºµÄÇé¿öÀ´×öÏàÓ¦µÄÑ¡Ôñ£»»¹ÓÐÔÚÿһ¸ö´óÏîºÍÎĵµµÄ×îºó»áÓÐÒ»¸ö¾Ñé̸£¬ËüÊÇһЩ¸ßÊÖÃÇÔÚÓ¦¶ÔÎÊÌâºÍ´¦ÀíÌØÓÐÓ²¼þʱµÄһЩ¾Ñ飨Õâ¸ö»¹µ ......
ÕªÒª:ÊÓÆµÍ¼Ïñ²É¼¯¼°´¦Àí¼¼ÊõÔÚÔ¶³ÌÊÓÆµ¼à¿ØºÍ¿ÉÊӵ绰ÖÐÓÐ׏㷺µÄÓ¦ÓÃǰ¾°£¬Çý¶¯ÊÓÆµ²É¼¯É豸ºÍ»ñÈ¡ÊÓÆµÊý¾Ý²¢½øÐÐÏàÓ¦µÄ´¦Àí£¬ÊÇʵÏÖÕâЩӦÓõĻù´¡¡£Õë¶ÔÕâЩӦÓ㬹¹½¨ÁËÒ»¸ö»ùÓÚǶÈëʽ LinuxºÍ PXA270΢´¦ÀíÆ÷µÄÊÓÆµ²É¼¯Óë´«Êäϵͳ£¬ÀûÓà Video4LinuxʵÏÖ USBÉãÏñÍ·ÊÓÆµÊý¾Ý²É¼¯£¬²É¼¯µÄÊÓÆµÊý¾Ý¾ JPEGѹËõº ......
ÔÚ¿ª·¢¹ý³ÌÖУ¬±ØÈ»»á³öÏÖ¶àÈËͬʱ¹¤×÷¡¢Ð×ŵÄÇé¿ö£¬ÔÚǶÈëʽ¿ª·¢ÏîÄ¿ÖиüΪƽ³££¬ÕâÑù¿ÉÒÔ¼Ó¿ìÏîÄ¿ÖÜÆÚ£¬Îª²úÆ·ÉÏÊÐÕ¼µÃʱ¼äÏÈ»ú¡£Ä¿Ç°£¬Ê¹ÓÃlinux×÷Ϊ¿ª·¢²úÆ·µÄ²Ù×÷ϵͳÇé¿öÔ½À´Ô½¶à£¬Ê¹ÓÃÔ½À´Ô½¹ã·º¡£ÎªÁ˽»²æ±àÒ룬ΪÁË×î½Ó½ü¿ª·¢Ä¿±ê£¬ÎÒÃÇÒ»°ã¶¼»á×Ô¼º´î½¨Ò»Ì¨linux¿ª·¢·þÎñÆ÷¡£linux¿ª·¢·þÎñÆ÷ ......
LinuxϾ²Ì¬¿â.aÉú³É
1.½«¸÷º¯Êý´úÂëËùÔÚµÄÔ´Îļþ±àÒë³ÉĿ¼Îļþ¡£ÀýÈ磬¶ÔÓÚmyfunc.c£¬¿ÉÒÔÓÃÈçÏÂÃüÁî ½«Æä±àÒë³ÉÄ¿±êÎļþ£º
gcc -c myfunc.c
µ±È»ÔÚÓжà¸öÔ´Îļþʱ£¬Ö»ÐèÔÚgcc ÃüÁîÐÐÖн«Æä·Ö±ðÁÐÉϾͿÉÒÔÁË¡£¾´ËÒ»²½£¬½«Äܹ»µÃµ½¸÷Ô´ÎļþµÄÄ¿±êÎļþ¡£¶ÔÉÏÀý£¬½«µÃµ½myfunc.o
2.½«¸÷Ä¿±êÎļþÊÕ¼¯ÆðÀ´· ......