#include

#include

#include

int main(int argc, char *argv[]) {

unsigned int timeleft;

printf("Set the alarm and sleep\n");

//设置定时器,时钟一到就发送一个信号SIGALRM到进程。

alarm(10);

sleep(5);

timeleft = alarm(0); //获得上一个闹钟的剩余时间:5秒

printf( "Time left before cancel, and rearm: %d\n", timeleft );

alarm(timeleft);

printf("Hanging around, waiting to die\n");

pause(); //让进程暂停直到信号出现

return EXIT_SUCCESS;

}

#include

#include

#include

#include

#include

#include

#include

#include

int isExit = 1;

//通过调用alarm来设置计时器,然后继续做别的事情。当计时器计时到0时,信号发送,处理函数被调用。

static void timer(int sig) {

static int count = 0;

count++;

printf("\ncount = %d\n", count);

if (sig == SIGALRM)

{

printf("timer\n");

}

signal(SIGALRM, timer); //重新注册定时器

alarm(1);//定时1s

if (count == 5)

{

alarm(0);

isExit = 0;

}

return;

}

//linux定时器的实现

int main(int argc, char *argv[]) {

signal(SIGALRM, timer);//执行定时器函数

printf("wait 1s\n");

alarm(1); //定时1s

while (isExit)

{

};

printf("finish\n");

return 0;

}

linux alarm函数clock,linux c之alarm函数的使用,定时器的实现相关推荐

  1. linux 下 c++ clock 函数理解

    #include <stdio.h> #include <time.h> using namespace std;int sum(int n) {int res = 0;if ...

  2. linux c语言内核函数手册,Linux C函数实例速查手册

    函数学习目录: 第1章 初级I/O函数 1.1 close函数:关闭已经打开的文件 1.2 creat函数:创建一个文件 1.3 dup函数:复制文件描述符 1.4 dup2函数:复制文件描述符到指定 ...

  3. linux系统发送信号的系统调用是,linux系统编程之信号:信号发送函数sigqueue和信号安装函数sigaction...

    信号发送函数sigqueue和信号安装函数sigaction sigaction函数用于改变进程接收到特定信号后的行为. sigqueue()是比较新的发送信号系统调用,主要是针对实时信号提出的(当然 ...

  4. linux signal函数用法,linux信号机制之sigaction构造体浅析,signal 函数,信号捕捉.

    来自:http://hi.baidu.com/phenix_yw/blog/item/6eb4ca391d1479f23a87ce19.html 信号安装函数sigaction(int signum, ...

  5. Linux多任务编程之五:exit()和_exit()函数(转)

    来源:CSDN  作者:王文松   转自:Linux公社 ----------------------------------------------------------------------- ...

  6. Linux内核网络栈1.2.13-socket.c函数概述

    参考资料 <<linux内核网络栈源代码情景分析>> socket常用函数概述 根据socket提供的常用的库函数,socket,read,write等函数, 执行的过程 in ...

  7. linux文件操作函数程序,linux 文件操作函数

    文件操作(Linux) 常用linux函数库中的基本函数 1. close函数,关闭文件 2. creat函数,建立文件 3. dup.dup2函数,复制文件描述词 4. fcntl函数,文件描述词操 ...

  8. Linux 多线程应用中编写安全的信号处理函数

    2019独角兽企业重金招聘Python工程师标准>>> Linux 多线程应用中编写安全的信号处理函数 在 开发多线程应用时,开发人员一般都会考虑线程安全,会使用 pthread_m ...

  9. linux 打印函数宏,linux内核中的嵌入式汇编宏函数

    在看linux内核代码时,常会遇到诸如:static inline _syscall0(int,fork)这样的函数.经查阅资料,发现该函数是嵌入式汇编宏函数. linux内核提供了7个非常有用的宏定 ...

  10. 探测函数 中断 linux,linux中断编程函数

    总结下linux中断编程的函数,方便下次使用时查看. 1.中断申请和释放 int request_irq( unsigned int irq, irq_handler_t handler, unsig ...

最新文章

  1. 2008r2添加没有应用程序服务器,将应用程序移动到服务器2008R2 64位时的AccessViolationException...
  2. Android利用RecognizerIntent识别语音并简单实现打电话动作
  3. C++中string.find()的误用
  4. aix 超过一天的文件_Aix 6.1下 /dev/null 21 文件过大导致根目录爆满
  5. 使用Kylin导入JDBC数据源遇到的问题
  6. 阿里合伙人程立:阿里15年,我撕掉了身上两个标签
  7. 织梦dedecms财务会计代理记账财税公司网站模板 带手机版
  8. Flutter轮播图
  9. scala java抽象理解_Scala学习笔记(五) 抽象类以及类中的一些语法糖
  10. 设计灵感|三维时代!C4D人物设计案例
  11. 分布式锁概念与实现方案
  12. Convert excel format exception.You can try specifying the ‘excelType‘ yourself
  13. Unity 数据统计SDK TalkingData
  14. Word分栏出现空白怎么解决
  15. Windows 系统debug级 进程调试工具 ntsd 详解
  16. 数据扒一扒《隐秘的角落》到底怎么火的?
  17. 公司性格测试,来一发
  18. PMP学习笔记 第13章 项目相关方管理
  19. Nagios nsca插件进程突然死掉
  20. 在Hexo博客上添加可爱的Live 2D模型

热门文章

  1. 华为p20支持手机云闪付吗_华为哪些手机支持云闪付
  2. 学神经网络需要什么基础,深度神经网络怎么用
  3. 让用户输入一个数,判断7的倍数
  4. 同步多个 git 远程仓库
  5. sticky 失效问题
  6. linux 动环 源码,动环监控系统中B接口的实现
  7. cmd批量修改文件名 增加文字_cmd命令批量修改文件名或后缀名
  8. Office Word 2016 中Word自带公式编辑器编辑的公式转Mathtype出现omml2mml.xsl 问题的解决方法
  9. mysql练习题库一
  10. linux程序图形关不了怎么办,ubuntu下卸载软件 linux关闭图形化界面