青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

大龍的博客

常用鏈接

統(tǒng)計(jì)

最新評(píng)論

linux上定時(shí)函數(shù) setitimer 的使用介紹(轉(zhuǎn))

setitimer()為L(zhǎng)inux的API,并非C語(yǔ)言的Standard Library,setitimer()有兩個(gè)功能,一是指定一段時(shí)間后,才執(zhí)行某個(gè)function,二是每間格一段時(shí)間就執(zhí)行某個(gè)function,以下程序demo如何使用setitimer()。
view plaincopy to clipboardprint?
/*
 
 
 
Filename    : timer.cpp
 
Compiler    : gcc 4.1.0 on Fedora Core 5
 
Description : setitimer() set the interval to run function
 
Synopsis    : #include <sys/time.h>
 
              int setitimer(int which, const struct itimerval *value, struct itimerval *ovalue);
 
              struct itimerval {
 
                struct timerval it_interval;
 
                struct timerval it_value;
 
              };
 
 
 
              struct timeval {
 
                long tv_sec;
 
                long tv_usec;
 
              }            
 
Release     : 11/25/2006
 
*/ 
 
#include <stdio.h>    // for printf() 
 
#include <unistd.h>   // for pause() 
 
#include <signal.h>   // for signal() 
 
#include <string.h>   // for memset() 
 
#include <sys/time.h> // struct itimeral. setitimer() 
 
 
 
void printMsg(int); 
 
 
 
int main() { 
 
  // Get system call result to determine successful or failed 
 
  int res = 0; 
 
  // Register printMsg to SIGALRM 
 
  signal(SIGALRM, printMsg); 
 
   
 
  struct itimerval tick; 
 
  // Initialize struct 
 
  memset(&tick, 0, sizeof(tick)); 
 
  // Timeout to run function first time 
 
  tick.it_value.tv_sec = 1;  // sec 
 
  tick.it_value.tv_usec = 0; // micro sec. 
 
  // Interval time to run function 
 
  tick.it_interval.tv_sec = 1; 
 
  tick.it_interval.tv_usec = 0; 
 
  // Set timer, ITIMER_REAL : real-time to decrease timer, 
 
  //                          send SIGALRM when timeout 
 
  res = setitimer(ITIMER_REAL, &tick, NULL); 
 
  if (res) { 
 
    printf("Set timer failed!!\n"); 
 
  } 
 
 
 
  // Always sleep to catch SIGALRM signal 
 
  while(1) { 
 
    pause(); 
 
  } 
 
 
 
  return 0;   
 

 
 
 
void printMsg(int num) { 
 
  printf("%s","Hello World!!\n"); 
 

當(dāng)setitimer()所執(zhí)行的timer時(shí)間到了,會(huì)呼叫SIGALRM signal,所以在第30行用signal()將要執(zhí)行的function指定給SIGALRM。 在第43行呼叫setitimer()設(shè)定timer,但setitimer()第二個(gè)參數(shù)是sturct,負(fù)責(zé)設(shè)定timeout時(shí)間,所以第36行到第 40行設(shè)定此struct。itimerval.it_value設(shè)定第一次執(zhí)行function所延遲的秒數(shù), itimerval.it_interval設(shè)定以后每幾秒執(zhí)行function,所以若只想延遲一段時(shí)間執(zhí)行function,只要設(shè)定 itimerval.it_value即可,若要設(shè)定間格一段時(shí)間就執(zhí)行function,則it_value和it_interval都要設(shè)定,否則 funtion的第一次無(wú)法執(zhí)行,就別說(shuō)以后的間隔執(zhí)行了。 第36行和第39行的tv_sec為sec,第37行和40行為micro sec(0.001 sec)。 第43行的第一個(gè)參數(shù)ITIMER_REAL,表示以real-time方式減少timer,在timeout時(shí)會(huì)送出SIGALRM signal。第三個(gè)參數(shù)會(huì)存放舊的timeout值,如果不需要的話,指定NULL即可。 第47 行的pause(),命令系統(tǒng)進(jìn)入sleep狀態(tài),等待任何signal,一定要用while(1)無(wú)窮循環(huán)執(zhí)行pause(),如此才能一直接收 SIGALRM signal以間隔執(zhí)行function,若拿掉while(1),則function只會(huì)執(zhí)行一次而已。

posted on 2010-05-23 03:23 大龍 閱讀(451) 評(píng)論(0)  編輯 收藏 引用


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美精品福利在线| 一本大道av伊人久久综合| 亚洲激情社区| 国产日韩精品久久| 日韩一区二区电影网| 在线精品视频一区二区三四| 亚洲一区二区网站| 亚洲私人影院在线观看| 欧美成人亚洲成人日韩成人| 久久久国际精品| 国产精品免费一区二区三区观看 | 亚洲一区免费网站| 欧美高清在线一区| 欧美电影免费| 亚洲国产精品一区二区www在线 | 久久久成人精品| 久久精品中文字幕免费mv| 国产精品毛片在线| 亚洲一区二区三区免费在线观看| 一区二区三区不卡视频在线观看 | 国产精品99久久久久久人| 猛干欧美女孩| 欧美大片一区| 91久久久在线| 欧美wwwwww| 亚洲人成7777| 99视频精品| 欧美日韩亚洲国产精品| 日韩亚洲欧美综合| 亚洲欧美精品一区| 国产精品久久久久久久久免费樱桃 | 亚洲风情亚aⅴ在线发布| 久久国产精品久久久| 久久久久久久久久久成人| 国产在线观看精品一区二区三区 | 久久久欧美精品| 欧美va天堂va视频va在线| 亚洲国产乱码最新视频| 欧美大片在线看免费观看| 亚洲精品综合在线| 亚洲欧美另类中文字幕| 国产无一区二区| 久久久久一本一区二区青青蜜月| 免费精品99久久国产综合精品| 亚洲电影第1页| 欧美激情一区二区三区在线视频| 日韩网站在线观看| 性感少妇一区| 亚洲高清精品中出| 欧美日韩国产限制| 欧美亚洲视频在线看网址| 男男成人高潮片免费网站| 日韩午夜中文字幕| 国产精品综合| 久久综合999| 99热这里只有精品8| 久久精品30| 亚洲日本在线观看| 国产精品欧美日韩一区| 久久久久久一区| 99精品免费| 裸体歌舞表演一区二区| 亚洲美女色禁图| 国产日韩欧美在线播放不卡| 麻豆成人精品| 亚洲欧美文学| 亚洲日本中文字幕| 久久福利资源站| 夜夜嗨av一区二区三区中文字幕 | 亚洲图片欧美日产| 激情文学综合丁香| 国产精品成人一区二区三区吃奶 | 午夜在线精品偷拍| 亚洲人成网站精品片在线观看| 欧美在线资源| 一区二区av在线| 亚洲第一精品福利| 国产精品系列在线播放| 欧美精品亚洲| 另类亚洲自拍| 欧美一区二区三区成人| 一区二区三区不卡视频在线观看| 免费人成精品欧美精品| 性欧美暴力猛交另类hd| 日韩天堂在线观看| 亚洲电影欧美电影有声小说| 国产精品一区二区在线| 欧美婷婷久久| 欧美久久九九| 欧美成人午夜影院| 美女国产一区| 久久视频国产精品免费视频在线| 亚洲午夜伦理| 亚洲视频在线二区| aa级大片欧美| 日韩亚洲欧美成人| 亚洲精品乱码久久久久久久久| 欧美顶级艳妇交换群宴| 美女诱惑黄网站一区| 久久久综合网| 久久久五月天| 久久久久久成人| 久久精品女人的天堂av| 欧美尤物一区| 久久精品理论片| 久久激情综合| 久久久久久尹人网香蕉| 久久久久综合网| 久久精品欧美| 久久亚洲视频| 欧美激情成人在线视频| 欧美激情精品久久久久| 亚洲大胆人体视频| 国产三区二区一区久久| 国产欧美日韩免费看aⅴ视频| 国产精品家教| 国产日韩欧美亚洲| 激情成人综合网| 亚洲成在人线av| 91久久久久久国产精品| 日韩一二三区视频| 亚洲视频欧美视频| 欧美一区二区精品在线| 久久久久一区| 欧美国产视频日韩| 亚洲毛片播放| 亚洲欧美成人一区二区在线电影 | 欧美在线啊v| 久久综合导航| 欧美日韩p片| 国产精品一区二区三区久久| 国语自产在线不卡| 亚洲精品在线电影| 亚洲欧美视频| 免费成人性网站| 亚洲精品久久久久久久久久久久久 | 久久这里有精品视频| 欧美韩日精品| 国产精品一区二区你懂得| 合欧美一区二区三区| 亚洲九九九在线观看| 欧美亚洲一区二区在线观看| 久久综合久色欧美综合狠狠| 欧美二区不卡| 一区二区三区久久网| 久久久久久久性| 欧美午夜免费影院| 一区三区视频| 亚洲小说春色综合另类电影| 久久久久久久性| 亚洲美女视频在线免费观看| 欧美一区二区三区免费视频| 欧美大香线蕉线伊人久久国产精品| 国产精品久久久久久久第一福利| 伊人久久大香线| 午夜精品久久久久久99热软件| 六月婷婷一区| 亚洲一二三区精品| 欧美v亚洲v综合ⅴ国产v| 国产伦精品一区二区三区视频孕妇| 亚洲高清不卡| 久久精品99无色码中文字幕| 亚洲精品视频免费观看| 久久九九99| 国产乱码精品一区二区三区五月婷 | 亚洲理伦电影| 久久综合99re88久久爱| 国产日韩欧美日韩大片| 亚洲视频一二三| 亚洲国产精品99久久久久久久久| 午夜精品久久久久久久男人的天堂| 欧美精品日韩| 亚洲国产精品成人| 久久久久欧美| 亚洲欧美日韩视频一区| 欧美日韩国产一级片| 亚洲国产一二三| 可以免费看不卡的av网站| 亚洲嫩草精品久久| 欧美三级第一页| 99视频一区二区| 亚洲国产精品高清久久久| 久久人人97超碰精品888| 国产欧美精品日韩| 亚洲一区国产精品| 99精品福利视频| 欧美日韩在线观看一区二区三区| 亚洲经典在线看| 欧美激情精品久久久久久久变态| 久久久精品一区二区三区| 国产在线一区二区三区四区| 欧美亚洲一区二区在线| 亚洲免费在线观看视频| 国产精品久久久久久久久果冻传媒| 一区二区三区 在线观看视| 亚洲精品专区| 国产精品videossex久久发布| 亚洲午夜伦理| 亚洲在线一区二区| 国产情人节一区|