欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

c語言定時器示例分享

 更新時間:2014年04月28日 10:47:11   作者:  
在linux下開發(fā),使用的是C語言。適用于需要定時的軟件開發(fā),以系統(tǒng)真實的時間來計算,它送出SIGALRM信號。每隔一秒定時一次

在linux下開發(fā),使用的是C語言。適用于需要定時的軟件開發(fā),以系統(tǒng)真實的時間來計算,它送出SIGALRM信號。每隔一秒定時一次

c語言定時器

復制代碼 代碼如下:

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <termios.h>
#include <errno.h>
#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <unistd.h>
#include "pthread.h"
#include <netinet/in.h>
#include <signal.h>
#include <sys/time.h>


struct StructOfTimerStatus
{
    unsigned int count;                               //計數值
    unsigned int flag;                                //定時標志
}
;

struct StructOfTimer

    struct StructOfTimerStatus      testtime;   //測試定時器
}
mytime;

 

void SetTimer(int sec,int usec);
void SigalrmFunc(void);


//定時器函數
/*******************************************************************************
* Discription:SIGALRM 信號響應函數;用作定時器
* Input      :
* Output    :
*******************************************************************************/
void SigalrmFunc(void)
{
    if(mytime.testtime.count++>20)      //定時1秒,20*50000=1s
    {
        mytime.testtime.flag=1;
        mytime.testtime.count=0;
    }
}


void SetTimer(int sec,int usec)
{
    struct itimerval value,ovalue;
    signal(SIGALRM,(void *)SigalrmFunc);

    value.it_value.tv_sec = sec;
    value.it_value.tv_usec = usec;
    value.it_interval.tv_sec = sec;
    value.it_interval.tv_usec = usec;

    setitimer(ITIMER_REAL,&value,&ovalue); 
}

int main(int argc, char **argv)
{
    SetTimer(0, 50000);
    while(1)
    {
        if(mytime.testtime.flag == 1)
        {
            mytime.testtime.flag = 0;
            system("clear");
            printf("Timing success\n");
        }
    }
    return 0;
}

相關文章

  • C++實現Linux下彈出U盤的方法

    C++實現Linux下彈出U盤的方法

    這篇文章主要介紹了C++實現Linux下彈出U盤的方法,實例分析了C++在Linux平臺上進行IO操作的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • C++映像劫持后門實例分析

    C++映像劫持后門實例分析

    這篇文章主要介紹了C++映像劫持后門,實例分析了C++映像劫持后門的原理與相關實現技巧,有助于進一步了解后門的原理,需要的朋友可以參考下
    2015-04-04
  • C++ std::make_unique和std::make_shared用法小結

    C++ std::make_unique和std::make_shared用法小結

    本文主要介紹了C++ std::make_unique和std::make_shared用法,使用std::make_unique和std::make_shared能夠簡化動態(tài)分配內存和構造對象的過程,提高代碼的安全性和可讀性,感興趣的可以了解一下
    2023-11-11
  • C語言實現自行車管理系統(tǒng)

    C語言實現自行車管理系統(tǒng)

    這篇文章主要為大家詳細介紹了C語言實現自行車管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • C語言深入講解棧與堆和靜態(tài)存儲區(qū)的使用

    C語言深入講解棧與堆和靜態(tài)存儲區(qū)的使用

    對大多數C 語言初學者來說,堆棧卻是一個很模糊的概念。堆棧是一種數據結構,一個在程序運行時用于存放的地方,相信這可能是很多初學者共同的認識,靜態(tài)存儲區(qū)即內存在程序編譯的時候就已經分配好,這塊內存在程序的整個運行期間都存在
    2022-04-04
  • 詳解C語言之操作符

    詳解C語言之操作符

    這篇文章主要以圖文結合的方式為大家詳細介紹了C語言的操作符知識,感興趣的小伙伴們可以參考一下,希望能給你帶來幫助
    2021-11-11
  • C++中const、volatile、mutable使用方法小結

    C++中const、volatile、mutable使用方法小結

    這篇文章主要介紹了C++中const、volatile、mutable使用方法小結,需要的朋友可以參考下
    2020-01-01
  • C語言基礎應用處理學生打分?計算時間?最少硬幣問題詳細過程

    C語言基礎應用處理學生打分?計算時間?最少硬幣問題詳細過程

    很多的問題其實可以用編程來解決作答,本篇文章帶你用C語言解決最少硬幣問題、計算已經過去了多久、學生成績自動打分來做基礎的訓練
    2022-02-02
  • C++中的String的常用函數用法

    C++中的String的常用函數用法

    這篇文章主要介紹了C語言中String的常用函數用法,對學習String的小伙伴有一定的參考價值,感興趣的小伙伴可以借鑒一下
    2023-03-03
  • c語言10個經典小程序

    c語言10個經典小程序

    c語言的經典程序,學習c語言的初學者可以參考下
    2013-01-01

最新評論