[发明专利]一种定时器操作方法及装置在审
申请号: | 201811087138.4 | 申请日: | 2018-09-18 |
公开(公告)号: | CN110908429A | 公开(公告)日: | 2020-03-24 |
发明(设计)人: | 宋卓;李靖轩;常怀鑫 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F1/04 | 分类号: | G06F1/04 |
代理公司: | 北京国昊天诚知识产权代理有限公司 11315 | 代理人: | 许志勇 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 定时器 操作方法 装置 | ||
1.一种定时器操作方法,包括:
提供定时器集合,其中,所述定时器集合包括:对应于不同触发时长的多个定时器链表,所述定时器链表用于存放具有与该定时器链表对应的触发时长的任务定时器;
基于所述定时器集合,对任务定时器进行操作。
2.根据权利要求1所述的方法,其中,所述定时器集合还包括:链表头部子集;
所述链表头部子集与各所述定时器链表的头部相关联并用于存放各所述定时器链表的头部的任务定时器。
3.根据权利要求2所述的方法,其中,所述链表头部子集采用数组的数据结构实现,或者,所述链表头部子集采用红黑树的数据结构实现。
4.根据权利要求2所述的方法,其中,所述基于所述定时器集合,对任务定时器进行操作,包括:
提供一定时器操作线程;
采用所述定时器操作线程基于所述定时器集合,对任务定时器进行操作。
5.根据权利要求4所述的方法,其中,所述操作包括:查询操作;
所述采用所述定时器操作线程基于所述定时器集合,对任务定时器进行操作,包括:
采用所述定时器操作线程依次遍历所述链表头部子集中的各所述任务定时器;以及,
当遍历到符合超时条件的任务定时器时,触发执行该任务定时器所对应的任务。
6.根据权利要求5所述的方法,其中,在触发执行该任务定时器所对应的任务之后,还包括:
对所述任务定时器进行删除操作,或者对所述任务定时器进行重设操作。
7.根据权利要求4所述的方法,其中,所述操作还包括:插入操作;
所述采用所述定时器操作线程基于所述定时器集合,对任务定时器进行操作,包括:
采用所述定时器操作线程在所述定时器集合中,查找与待插入的任务定时器的触发时长对应的目标定时器链表;以及,
若查找到所述目标定时器链表,则将所述待插入的任务定时器添加到所述目标定时器链表的尾部。
8.根据权利要求7所述的方法,其中,在查找与待插入的任务定时器的触发时长对应的目标定时器链表之后,还包括:
若未查找到所述目标定时器链表,则在所述定时器集合中,新增与所述待插入的任务定时器的所述触发时长对应的定时器链表;以及,
将所述待插入的任务定时器作为新增的所述定时器链表的头部的任务定时器。
9.根据权利要求4所述的方法,其中,所述操作还包括:删除操作;
所述采用所述定时器操作线程基于所述定时器集合,对任务定时器进行操作,包括:
采用所述定时器操作线程在所述定时器集合中,根据待删除的任务定时器的位置信息,删除所述待删除的任务定时器。
10.根据权利要求9所述的方法,其中,所述位置信息包括:用于表征前后指针的指示信息;
所述采用所述定时器操作线程在所述定时器集合中,根据待删除的任务定时器的位置信息,删除所述待删除的任务定时器,包括:
采用所述定时器操作线程在所述定时器集合中摘除所述前后指针,以删除所述待删除的任务定时器。
11.根据权利要求4所述的方法,其中,所述操作还包括:重设操作;
所述采用所述定时器操作线程基于所述定时器集合,对任务定时器进行操作,包括:
采用所述定时器操作线程在所述定时器集合中,确定包含待重置的任务定时器的目标定时器链表;以及,
更新所述待重置的任务定时器的绝对时间戳,并将更新后的所述任务定时器添加到所述目标定时器链表的尾部。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811087138.4/1.html,转载请声明来源钻瓜专利网。