一种定时器任务处理方法、装置及服务器制造方法及图纸

技术编号:28790350 阅读:35 留言:0更新日期:2021-06-09 11:27
本发明专利技术提供的一种定时器任务处理方法、装置及服务器,应用于计算机技术领域,该方法在锁定任务调度器后,基于预设循环链表在各定时器任务中确定当前待处理定时器任务,并基于预设循环链表中记录的该当前待处理定时器任务的任务信息进行判断,如果该当前待处理定时器任务未处于运行状态且其休眠时长大于等于相应的休眠时长阈值,则将当前待处理定时器任务确定为可执行任务,将可执行任务标记为运行状态,并在释放任务调度器的锁之后,执行可执行任务。与现有技术相比,可以有效避免无差异的执行频率,从而避免处理器资源的浪费,有助于提高实时处理系统的执行效率。提高实时处理系统的执行效率。提高实时处理系统的执行效率。

【技术实现步骤摘要】
一种定时器任务处理方法、装置及服务器


[0001]本专利技术属于计算机
,尤其涉及一种定时器任务处理方法、装置及服务器。

技术介绍

[0002]在实际应用中,实时处理系统中的应用软件往往会设置大量的需要按照一定周期执行的定时器任务,比如扫描哈希表,通过按照一定的扫描周期对各个哈希表进行超时扫描,从而保证哈希表的有效性以及满足实时处理系统的实时性要求。
[0003]不同的哈希表对实时性要求是不同的,有的软件业务信息更新快,要求哈希表快速超时失效,超时扫描频率较高;有的软件业务信息更新较慢,相应的,哈希表的超时时间较长,超时扫描频率就较低。实时处理系统中的定时器任务大都有着与扫描哈希表有着类似的特性,即具备不同的处理频率要求。
[0004]现有技术中,定时器任务的执行频率基于硬件定时器实现,即是按照固定频率对所有的定时器任务进行处理,以扫描哈希表为例,对于超时时间长的哈希表而言,对其进行超时扫描的频率将远大于实际需求,很大比例的扫描过程是不需要进行的,因此,现有技术中的定时器任务处理方法势必会造成处理器资源的浪费,甚至影响整个本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种定时器任务处理方法,其特征在于,包括:获取任务调度器的锁,以锁定所述任务调度器;其中,所述任务调度器包括预设循环链表,所述预设循环链表记录多条任务信息,任一所述任务信息包括定时器任务的状态、定时器任务的休眠时长阈值和定时器任务;基于所述预设循环链表,在各所述定时器任务中确定当前待处理定时器任务;若所述当前待处理定时器任务未处于运行状态且所述当前待处理定时器任务的休眠时长大于等于相应的休眠时长阈值,将所述当前待处理定时器任务确定为可执行任务,并将所述可执行任务标记为运行状态;释放所述任务调度器的锁;执行所述可执行任务。2.根据权利要求1所述的定时器任务处理方法,其特征在于,在所述可执行任务执行完成后,还包括:获取所述任务调度器的锁;将所述可执行任务标记为空闲状态,并释放所述任务调度器的锁。3.根据权利要求1所述的定时器任务处理方法,其特征在于,所述基于所述预设循环链表,在各所述定时器任务中确定当前待处理定时器任务,包括:确定上一周期中作为可执行任务的定时器任务;遍历所述预设循环链表,将所述预设循环链表中所述上一周期中作为可执行任务的定时器任务的下一个定时器任务,作为当前待处理定时器任务。4.根据权利要求1所述的定时器任务处理方法,其特征在于,所述任务调度器还包括待删除定时器任务列表,在所述释放所述任务调度器的锁前,还包括:获取所述待删除定时器任务列表中的待删除定时器任务;在释放所述任务调度器的锁之后,释放所述待删除定时器任务。5.根据权利要求1所述的定时器任务处理方法,其特征在于,还包括:获取定时器任务的任务信息,其中,所述任务信息包括定时器任务、定时器扫描函数、定时器超时处理函数和超时时间;根据所述超时时间计算所述定时器任务对应的休眠时长阈值;获取所述任务调度器的锁;添加所述定时器任务的任务信息以及所述定时器任务对应的休眠时长阈值至所述预设循环链表中;释放所述任务调度器的锁。6.根据权利要求5所述的定时器任务处理方法,其特征在于,所述根据所述超时时间计算所述定时器任务对应的休眠时长阈值,包括:调用预设映射关系,所述预设映射关系中记录...

【专利技术属性】
技术研发人员:王小威
申请(专利权)人:恒为科技上海股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1