[发明专利]实现确定性执行目标的任务调度方法、装置及电子设备在审
申请号: | 202110767022.0 | 申请日: | 2021-07-07 |
公开(公告)号: | CN113495782A | 公开(公告)日: | 2021-10-12 |
发明(设计)人: | 范啟明;段勃勃 | 申请(专利权)人: | 上海映驰科技有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 上海思捷知识产权代理有限公司 31295 | 代理人: | 王宏婧 |
地址: | 200030 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 实现 确定性 执行 目标 任务 调度 方法 装置 电子设备 | ||
1.一种实现确定性执行目标的任务调度方法,其特征在于,包括,
将至少一个任务组组成任务链,其中,每个任务组包括至少一个任务;
根据所述任务组的路由调度信息和所述任务的运行状态,按照预设路由规则,将所述任务链上的任务组调度至任务路由;
根据所述任务组的路由调度信息,激活并运行线程池中被所述任务路由路由到的线程池线程,以执行所述任务组对应的任务。
2.如权利要求1所述的一种实现确定性执行目标的任务调度方法,其特征在于,所述任务组的路由调度信息包括起始调用时间和运行时间;
所述将至少一个任务组组成任务链,包括:所述任务链中的任务组按照所述任务组的起始调用时间的先后顺序排列。
3.如权利要求1所述实现确定性执行目标的任务调度方法,其特征在于,每个所述任务组包括至少一个任务回调函数;所述每个任务组包括至少一个任务,包括:所述任务组中的任务按照所述回调函数执行的先后顺序排列。
4.如权利要求3所述的实现确定性执行目标的任务调度方法,其特征在于,所述任务路由包括超时任务列表、超时线程列表、当前线程和当前超时线程;
所述线程池包括若干个线程池线程和若干个线程池超时线程;其中,各个所述线程池线程具有不同的执行优先级,各个所述线程池超时线程具有不同的超时优先级;
根据所述任务组的路由调度信息和所述任务的运行状态,按照预设路由规则,将所述任务链上的任务组调度至任务路由,包括,在预设任务编排周期,执行以下步骤:
步骤A:将所述当前线程指向优先级最低的所述线程池线程,将所述当前超时线程指向优先级最高的所述线程池超时线程,获取所述任务链上所有所述任务组的任务调度起始时间;
步骤B:根据所述任务组的任务调度起始时间,获取当前待调用的所述任务组;
步骤C:判断所述当前线程是否有任务在执行,若是,执行步骤D,若否,执行步骤E;
步骤D:将当前线程指向的所述线程池线程加入到超时线程列表中,所述超时任务列表中的任务将会在所述当前超时线程上调度运行,将当前任务组的上一任务组加入到超时任务列表中,并将所述当前线程指向更高执行优先级的所述线程池线程;
步骤E:将待执行任务路由到所述当前线程中进行执行,所述当前线程指向所述优先级最低的所述线程池线程,所述任务组上的任务将会被顺序执行;
步骤F:判断所述当前待调用的所述任务组是否是所述任务链上的最后一个任务组,若是,更新所述任务路由,重新开始新一轮的调度;若否,执行步骤B。
5.根据权利要求4所述的实现确定性执行目标的任务调度方法,其特征在于,所述更新所述任务路由的方法,包括,
更新所述超时任务列表,如果该任务连续M个调度周期都正常,那么将该任务从所述超时任务列表中移除,其中,M为调度周期次数,由用户自定义数值,M≥1,M为整数;
更新所述超时线程列表:如果所述超时线程列表中所述线程池线程没有任务正在调度,那么将所述线程池线程从所述超时线程列表中移除;
更新所述当前线程:如果所述超时线程列表中有所述线程池线程,那么取在所述超时线程列表中最高执行优先级线程池线程作为所述当前线程的指向对象,否则所述当前线程指向所述执行优先级最低的所述线程池线程;
更新所述当前超时线程:当所述周期调度完毕时,超时任务仍在运行中,此时需要将超时任务直接删掉;当所述周期调度完毕时,超时任务已经运行完成,将所述超时任务置换到更低优先级的调度任务上进行调度,更新所述当前超时线程指向调度的线程池超时线程。
6.如权利要求4所述的实现确定性执行目标的任务调度方法,其特征在于,所述不同执行优先级的线程池线程在没有任务被执行时,都处于挂起状态,一旦某个所述任务被路由到对应的所述线程池线程上,所述线程池线程立即被激活,并执行所述任务。
7.如权利要求4所述的实现确定性执行目标的任务调度方法,其特征在于,所述任务链由n个所述任务组组成,其中n≥2。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海映驰科技有限公司,未经上海映驰科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110767022.0/1.html,转载请声明来源钻瓜专利网。