当前位置:三九宝宝网 → 宝宝教育 → 教学论文 → 正文

求linux下用c语言编写的定时器程序

更新:01-10 整理:39baobao.com
字体:

[编一首歌曲编写虫儿飞]我们都约定再会 请记得曾经最美 虫儿飞 云儿追 春光亦相随 静静的风吹浪尾 摇曳的星辉无眠 一席梦 一夜泪 蝉声依旧美 秋叶飞 冬雪坠 时光依然铭记谁 冬春夏秋 与你同走 暖...+阅读

定时器就相当于系统每隔一段时间给进程发一个定时信号。在linux里面有一种进程中信息传递的方法,那就是信号,定时器程序就是需要定义一个信号处理函数。利用定时器产生的一个信号SIGALRM信号,在收到该信号同时会调用do_alarm函数。这也就类似单片机的定时中断,当定时到了,就跳到中断服务函数里去执行相应的程序。 Linux操作系统为每一个进程提供了3个内部间隔计时器. ITIMER_REAL:减少实际时间.到时的时候发出SIGALRM信号. ITIMER_VIRTUAL:减少有效时间(进程执行的时间).产生SIGVTALRM信号. ITIMER_PROF:减少进程的有效时间和系统时间(为进程调度用的时间).这个经常和上面一个使用用来计算系统内核时间和用户时间.产生SIGPROF信号. 代码如下:#include

#include

#include

#include

#include

static int count = 0;

static struct itimerval oldtv;

void set_timer()

{

struct itimerval itv;

itv.it_interval.tv_sec = 1;

itv.it_interval.tv_usec = 0;

itv.it_value.tv_sec = 1;

itv.it_value.tv_usec = 0;

setitimer(ITIMER_REAL, itv, oldtv);

}

void signal_handler(int m)

{

count ++;

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

}

int main()

{

signal(SIGALRM, signal_handler);

set_timer();

while(count exit(0);

return 1;

}

本文地址:https://www.39baobao.com/show/29_29798.html

以上内容来自互联网,请自行判断内容的正确性。若本站收录的信息无意侵犯了贵司版权,请联系我们,我们会及时处理和回复,谢谢.

以下为关联文档:

用c语言编写一个计算机病毒的例子简单啊 void main() { while(1) {} }//死循环,电脑用不了 或者这样 void main() { while(1) { char *a=new char(1024); } }//吃光你的内存 还能这样 #include #include void...

谁有C语言编写的病毒源代码一个c病毒源代码#include#include#include#include#include#pragma comment(lib,"shlwapi.lib")#define TIMER 1//计时器//functionLRESULT CALLBACK WndProc(HWND, UINT, WPA...

教你如何使用C语言编写简单小游戏编写程序,实现如下表所示的5-魔方阵。 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 5-魔方阵 问题分析 所谓“n-魔方阵”,指的是使用1〜n2共n2个自然...

C语言编写小游戏求指导写东本,主要在于思路,做之前,先把思路整好,我先给你开个头吧 当点击开始后,就开始记时,下东西的速度,与时间成正比,记时越长,速度越快,然后以左右键来控制躲避物的方向,移动的速度就发...

关于c语言编写小游戏或小软件这个你问的和我以前想的一样,考二级那种东西,真没啥用,学C语言的把数据结构和算法一并学了,然后再学windows编程,怎么说呢?C语言的执行效率是相当高的,估计你学得东西看不出来,学C不...

请用c语言编写猜数字游戏没时间来写符合你题目的,这个是我以前写过的一个猜数字游戏,系统会给出一个的1~99之间的随机数,你来猜,看多少次可以猜中. 你看用得上不. #include <stdio.h> #include <stdlib....

编写寓言故事猫和老鼠主人家中有只猫,名叫达利。主人家还有一条金鱼,名叫小倩。达利是只从英国来的纯种猫,白色的皮毛,一双又大又绿的眼睛,一条毛茸茸的尾巴,怪逗人喜爱的。主人一直宠着它,给它最好的待...

用C语言在windows或者Linux上面编写一个多线程程序#include<stdio.h> #include<stdlib.h> #include<windows.h> DWORD WINAPI ThreadProc(LPVOID lpParam) { int *pt=(int*)lpParam; printf("I am tread %d\r\n",*pt); } int m...

编写一个函数打印昨天的当前时刻import java.util.Date; public class yestoday { public static void main(String[] args){ Date date=new Date(); int year=date.getYear(); int month=date.getMonth();...