首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种定时器的实现方法 

申请/专利权人:成都辛克普雷科技有限公司

申请日:2024-05-09

公开(公告)日:2024-07-05

公开(公告)号:CN118152101B

主分类号:G06F9/48

分类号:G06F9/48

优先权:

专利状态码:有效-授权

法律状态:2024.07.05#授权;2024.06.25#实质审查的生效;2024.06.07#公开

摘要:本发明公开了一种定时器的实现方法,包括以下步骤:(1)在系统内设立时间区间概念,并对其进行定义;(2)在系统内设立桶的概念,并对其进行定义;(3)在系统内建立两级存储表;(4)在系统内添加定时器;(5)在系统内通过调度程序完成定时器的调度。本申请提供了一种定时器的实现方法,极大的降低了插入与调度的难度,从而提高了定时器的插入与调度效率,降低了删除定时器所需的后续调度量,进而有效的提高了删除效率以及CPU的消耗,很好的促进了行业的发展与进步。

主权项:1.一种定时器的实现方法,其特征在于,包括以下步骤:(1)在计算机系统内设立时间区间概念,并对其进行定义;所述的时间区间是一个数学概念,代表的是从区间的开始到区间结束范围内的所有内容,该时间区间为左开右闭类型的区间;(2)在计算机系统内设立桶的概念,并对其进行定义;所述的桶是以时间区间来设立的,每个桶与相应的时间区间相对应,且桶用于存放处于该桶时间区间内的定时器,即桶是处于与该桶对应的时间区间内的定时器的集合;(3)在计算机系统内建立两级存储表;所述的两级存储表均为哈希表,且分别为:第一级存储表:用于存储所有桶的信息参数;其中,第一级存储表存储的参数为所有与桶相对应的时间区间信息;第二级存储表:用于储存对应的桶内的所有定时器的信息参数;其中,每个定时器都具有ID,第二级存储表存储的参数则为定时器的ID信息;所述ID是指的定时器的唯一编号;(4)在计算机系统内添加定时器;定时器的添加方法为:(41)根据定时器的生效时间计算出与该定时所对应的时间区间;(42)根据步骤(41)的时间区间在第一级存储表内查询是否存在对应时间区间的桶,若存在则进入步骤(43),若不存在则进入步骤(44);(43)将定时器放入桶中,并在该桶所对应的第二级存储表中添加该定时器的信息参数;(44)建立一个与该时间区间相对应的桶,并将定时器放入桶中;同时,在第一级存储表中添加该桶的信息参数,且建立与该桶对应的第二级存储表,并向该第二级存储表中添加该定时器的信息参数;(5)在计算机系统内通过调度程序完成定时器的调度;具体调度步骤为:(51)启动调度程序,调度程序以15毫秒的频率重复步骤(52)-(57);(52)调度程序根据当前时间计算其所属的时间区间,若该时间区间为首次计算获得的时间区间则进入步骤(54),若该时间区间为非首次计算获得的时间区间则进入步骤(53);(53)调度程序判断该时间区间与上一次计算获得的时间区间是否为同一个时间区间,否则进入步骤(54),是则进入步骤(55);(54)调度程序根据步骤(52)计算的时间区间在第一级存储表中寻找与该时间区间相匹配的桶,若不存在相匹配的桶则默认当前桶为空,若存在相匹配的桶则将该桶作为当前桶;(55)调度程序判断当前桶是否为空,是则等待15毫秒的调度时间结束后返回步骤(52),否则进入步骤(56);(56)调度程序判断是否存在当前桶的有序定时器列表,存在则进入步骤(57),不存在则建立当前桶的有序定时器列表后进入步骤(57);(57)调度程序从前往后遍历有序定时器列表,调用到达生效时间的定时器所对应的处理函数,直至寻找到第一个未到达生效时间的定时器为止。

全文数据:

权利要求:

百度查询: 成都辛克普雷科技有限公司 一种定时器的实现方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。