`
xiaoyu966
  • 浏览: 254818 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

一个简单的timer/watchdog程序

阅读更多

============================================================================

原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。

请注明转自:http://yunjianfei.iteye.com/blog/

============================================================================

 

最近从bacula里面的代码整理出来一个timer,实现的功能为:

 

可以启动一个独立的timer server线程,可以向其注册N个timer,在发生timeout的时候调用回调函数做一些事情。

 

最典型的场景为:一个socket server监听连接,来连接的时候创建一个线程,做类似状态机之类的一些工作。这时候如果发生超时,就比较麻烦。

 

如果有一个timer server,在来连接的时候,就注册一个timer,加入threadid,回调函数。在发生timeout的时候,就比较灵活了。

 

代码下载地址为http://download.csdn.net/download/xiaoyu966/6834199

 

见谅,积分有点高- -,不过确实是自己花了点时间改出来的,赚点积分哈哈。希望能帮助到大家。

分享到:
评论

相关推荐

    C8051F410定时器程序

    // Clear watchdog timer enable OSCICN |= 0x04; // Force Internal Osc. 1:8 prescaler while ((OSCICN & 0x40 ) == 0); // Wait until stable Timer0_Init (); // Initialize the Timer0 Port_Init (); //...

    松翰8位FLASH 单片机SN8F27E64L

     On chip watchdog timer and clock source Green mode: Periodical wakeup by timer  1.8V/2.4V/3.3V 3-level LVD with trim.  Package (Chip form support) PDIP 32 pin  Powerful instructions LQFP ...

    Linux混杂设备驱动(watchdog)

    WatchDog Timer驱动 Misc(或miscellaneous)驱动是一些拥有着共同特性的简单字符设备驱动。内核抽象出这些特性而形成...所有的misc设备被分配同一个主设备号MISC_MAJOR(10),但是每一个可以选择一个单独的次设备号。

    电子设计大赛跷跷板程序.doc

    // disable watchdog timer WDTCN = 0xad; SYSCLK_Init (); bac=0; chushi=1; PORT_Init(); LCD_Init(); PCA0_Init(); PCA1_Init (); Timer3_Init (65535); //P0=0x00; //P3=0x00; PCA0CPH0 = 0x00; PCA0CPH1 = 0x...

    msp430单片机各部程序模块实例

    // Stop watchdog timer P1DIR |= 0x01; // Set P1.0 to output direction for (;;) { volatile unsigned int i; P1OUT ^= 0x01; // Toggle P1.0 using exclusive-OR i = 50000; // Delay do (i--); ...

    ad7745 AD7746电容检测芯片I2C接口 C51单片机驱动程序源代码.zip

    // Stop watchdog timer to prevent time out reset WDTCTL = WDTPW + WDTHOLD; unsigned char flag_cset, flag_exc,flag_config,flag_capdac,ch0; //P2DIR|=BIT0|BIT1|BIT2; starti2c(); flag_cset=0x00; ...

    单片机与DSP中的什么是看门狗(watchdog)

     看门狗,又叫 watchdog timer,是一个定时器电路, 一般有一个输入,叫喂狗,一个输出到MCU的RST端,MCU正常工作的时候,每隔一端时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT...

    用430f149写的摄像头程序

    // Stop watchdog timer to prevent time out reset WDTCTL = WDTPW + WDTHOLD; long uint count; //uint CMOS_Data; uchar chr; P1IE |= BIT1; P4DIR = 0XFF;//输出 clk_init(); UART_init(); FIFO_CS_...

    PIC16F882/883/884/886/887中文手册.pdf

    (Watchdog Timer , WDT),可软件使能(在软 件选择最大分频比时,标称周期为268 秒) • 带有上拉的主复位引脚,可复用作输入引脚 • 可编程代码保护 • 高耐用性闪存/EEPROM 单元: - 闪存可承受10 万次擦写 - ...

    mini2440裸机程序

    mini2440裸机程序集合 keil4开发环境 led lcd adc clock uart interrupt watchdog timer

    创龙DSP C6748核心板源程序(全)

    创龙DSP C6748核心板源程序(全...广州创龙公司的TMS320C6748开发超详细源代码,包含程序flash,timer,uart,IIC_EEPROM,SPI_FLASH,Watchdog,NMI,Pwm,ECAP,rtc,lcd,audio,mcbsp,vpif,emif,upp,fft,IIR等

    DCS硬件知识

    一般有一个输入,叫喂狗,一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT 定时超过,就会给出一个复位信号到MCU...

    WatchDog.rar

    基于网上修改的看门狗程序,直接安装即可使用。支持自定义目录。需要监控的程序目录需要真写绝对路径,每隔30秒检查一次。全部源代码和安装包。把程序的代码里的Timer修改一下可以改为任何时间

    自动循迹小车原理图

    //启动指示灯1S闪一次 i++; } while(i); LM_speed=100;//全速启动 RM_speed=100; start_all=total_time_count;//捕获当前总时间计数 ji_shu=ji_shu+1; break; } case 2://开始线至减速线区间 { ...

    PIC18(L)F25K83/PIC18(L)F26K83 中文版 数据手册(带书签)

    PIC18(L)FXXK83是面向汽车和工业应用的全功能CAN产品系列。该产品系列提供多个通信外设...• 窗口看门狗定时器(Windowed Watchdog Timer, WWDT): - 可变预分频比选择 - 可变窗口大小选择 - 可由硬件或软件配置

    简单锁定看门狗定时器设计

    watchdog timer,是一个定时器电路, 一般有一个输入,叫喂狗(kicking the dog or service the dog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一端时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂狗,...

    单片机与DSP中的简单锁定看门狗定时器设计

    watchdog timer,是一个定时器电路, 一般有一个输入,叫喂狗(kicking the dog or service the dog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一端时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂狗,...

    watchdogTimer:Windows看门狗计时器模拟

    由于这是一个github存储库,而这是python,因此您始终可以阅读代码,以帮助您判断是否运行该程序:)那么,log.bin文件是用来做什么的? 当看门狗计时器未通过检查时,将使用此方法,它将记录发生故障的时间和日期

    PIC16F1516-7-8-9_中文资料.pdf

    • 扩展型看门狗定时器 (Watchdog Timer,WDT) • 通过两个引脚进行在线串行编程 (In-Circuit Serial Programming™,ICSP™) • 通过两个引脚进行在线调试 (In-Circuit Debug, ICD) • 增强型低电压编程 ...

    工业电子中的HOLTEK新推出16 Channel A/D MCU with SPI Interface

    HT82J30R为HOLTEK新一代八位A/D型微控制器,具备有4K OTP程序内存、216 Byte Data RAM、并具有16-bit Timer及8-bit Timer各一个、多达35个I/O、2个SPI、具备有看门狗(Watchdog)及LVR的功能用以加强MCU防当机能力。...

Global site tag (gtag.js) - Google Analytics