当前位置:  编程技术>c/c++/嵌入式

c语言定时器示例分享

    来源: 互联网  发布时间:2014-10-24

    本文导语:  在linux下开发,使用的是C语言。适用于需要定时的软件开发,以系统真实的时间来计算,它送出SIGALRM信号。每隔一秒定时一次 c语言定时器 代码如下:#include #include #include #include #include #include #include #include #include #include #include ...

在linux下开发,使用的是C语言。适用于需要定时的软件开发,以系统真实的时间来计算,它送出SIGALRM信号。每隔一秒定时一次

c语言定时器

代码如下:

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include "pthread.h"
#include
#include
#include


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 successn");
        }
    }
    return 0;
}


    
 
 

您可能感兴趣的文章:

  • C语言程序,软定时器应用的实例
  • vc6.0中c语言控制台程序中的定时技术(定时器)
  • C语言怎么实现定时器
  • c语言实现MD5算法完整代码示例
  • 使用c语言判断100以内素数的示例(c语言求素数)
  • c语言中if 语句的作用范围示例代码
  • c语言打印输出双引号的方法示例
  • c语言动态数组示例
  • c语言strftime时间格式化示例
  • c语言文件读写示例(c语言文件操作)
  • c语言求阶乘精确值示例
  • c语言的cps实现求fibonacci数列示例
  • c语言多线程编程使用示例
  • c语言生成随机uuid编码示例
  • c语言二进制数按位输出示例
  • c语言随机数函数示例
  • c语言获取文件大小的示例
  • 一个小示例告诉你Python语言的优雅之处
  • C语言小程序 杨辉三角示例代码
  • C语言使用普通循环方法和递归求斐波那契序列示例代码
  • c语言可变参数实现示例
  • 用C语言获取文件的大小示例分享
  • c语言线程终止练习示例
  • c语言合并两个已排序数组的示例(c语言数组排序)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 纯C语言:分治假币问题源码分享
  • php开源软件 iis7站长之家
  • 纯C语言:递归最大数源码分享
  • 纯C语言:递归二进制转十进制源码分享
  • C语言实现的ls命令源码分享
  • C语言实现的统计素数并求和代码分享
  • 纯C语言:折半查找源码分享
  • C语言实现的bitmap位图代码分享
  • 关于c语言指针的两处小tip分享
  • c语言实现系统时间校正工具代码分享
  • c语言读取csv文件和c++读取csv文件示例分享
  • 纯C语言:贪心Prim算法生成树问题源码分享
  • 纯C语言:分治快速排序源码分享
  • c语言链表操作示例分享
  • c语言尾队列tailq使用示例分享
  • c语言实现单链表算法示例分享
  • c语言实现的hashtable分享
  • 纯C语言:检索与周游广度深度遍历源码分享
  • 使用VC6.0对C语言程序进行调试的基本手段分享
  • 使用c语言生成随机数的示例分享
  • 2013年7月和2013年8月编程语言排行榜
  • 如何在GTK2.0下实现国际化(语言选择根据自己设置的语言,不用系统的语言)
  • 2017 年热门编程语言排行榜出炉,你的语言上榜没?
  • C语言中有指针,因此C语言可以创建链表,那么Java语言没有指针,那Java是否可以创建链表呢?
  • 苹果OS X和IOS下最新编程语言swift介绍
  • 求助,在linux下,c语言和汇编语言的接口是什么?
  • c语言判断某一年是否为闰年的各种实现程序代码
  • C语言中间语言 CIL
  • PHP编程语言介绍及安装测试方法
  • 最近学JSP,苦于HTML语言和JAVA语言太差,请教推荐几本书,thanks.
  • Linux下C语言strstr()查找子字符串位置函数详细介绍(strstr原型、实现及用法)


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3