一种基于TimeWheel的电表升级方法与流程

文档序号:28548652发布日期:2022-01-19 15:21阅读:来源:国知局

技术特征:
1.一种基于timewheel的电表升级方法,其特征在于:所述方法包括,s1、从数据库中加载任务,将任务放入时间轮中,初始化时间轮;s2、判断时间轮的分针所指当前刻度容器内是否存在任务,若是,执行s3,若否,执行s4;s3、判断当前任务所对应的时间轮圈数是否为0,若是,异步进行升级任务,若否,将当前任务所对应的时间轮圈数减1,并执行s4;s4、等待n分钟,并针对下个刻度容器再次执行s2操作,直至完成所有任务的升级操作。2.根据权利要求1所述基于timewheel的电表升级方法,其特征在于:所述方法还包括,在执行s1的将任务放入时间轮前,还进行如下操作,s10、判断任务的下次执行时间是否小于当前时间,若是,则异步执行任务,若否,执行s1中的将任务放入时间轮中这一操作。3.根据权利要求2所述基于timewheel的电表升级方法,其特征在于:所述时间轮圈数=int((第i块待升级电表的升级设定时间-当前时间)/m),其中,i和m均为不为0的自然数。4.根据权利要求2所述基于timewheel的电表升级方法,其特征在于:所述方法还包括,在执行完异步进行升级任务后,还将当前被执行完的任务从数据库中删除。5.根据权利要求4所述基于timewheel的电表升级方法,其特征在于:所述方法还包括,在将当前被执行完的任务从数据库中删除后,还从时间轮的刻度容器中删除当前被执行完的任务。6.根据权利要求1所述基于timewheel的电表升级方法,其特征在于:所述方法还包括在电表完成升级操作后,判断升级是否成功,若不成功,则安排下次补充升级时间,若升级成功,则返回结束信息。7.根据权利要求6所述基于timewheel的电表升级方法,其特征在于:所述安排下次补充升级时间具体包括,将失败次数s加1,并判断累加后的失败次数s是否超过阈值,若是,则返回升级任务失败信息,若否,依据重新升级固定间隔时间和累加后的失败次数s设定下次升级时间,s初始取值为1。8.根据权利要求7所述基于timewheel的电表升级方法,其特征在于:所述依据重新升级固定间隔时间和累加后的失败次数设定下次升级时间具体为,下次升级时间=重新升级固定间隔时间+累加后的失败次数s*1h+确定电表升级失败时所对应的当前时间。9.根据权利要求8所述基于timewheel的电表升级方法,其特征在于:所述重新升级固定间隔时间取值为2h。10.根据权利要求1所述基于timewheel的电表升级方法,其特征在于:所述n取值为1,所述m取值60,所述阈值取值5。

技术总结
本发明涉及一种基于TimeWheel的电表升级方法,所述方法包括S1、从数据库中加载任务,将任务放入时间轮中,初始化时间轮;S2、判断时间轮的分针所指当前刻度容器内是否存在任务,若是,执行S3,若否,执行S4;S3、判断当前任务所对应的时间轮圈数是否为0,若是,异步进行升级任务,若否,将当前任务所对应的时间轮圈数减1,并执行S4;S4、等待n分钟,并针对下个刻度容器再次执行S2操作,直至完成所有任务的升级操作。该方法降低了系统占用资源,提高了系统稳定性。定性。


技术研发人员:周善勇
受保护的技术使用者:宁波三星智能电气有限公司
技术研发日:2021.08.31
技术公布日:2022/1/18
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1