[发明专利]用于调度任务的方法和装置有效
申请号: | 201610890352.8 | 申请日: | 2016-10-12 |
公开(公告)号: | CN107943577B | 公开(公告)日: | 2022-03-04 |
发明(设计)人: | 王金贺;倪煜 | 申请(专利权)人: | 上海优扬新媒信息技术有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/48 |
代理公司: | 北京英赛嘉华知识产权代理有限责任公司 11204 | 代理人: | 王达佐;马晓亚 |
地址: | 201210 上海市嘉*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 调度 任务 方法 装置 | ||
1.一种用于调度任务的方法,其特征在于,所述方法包括:
获取至少一个任务和与各所述任务对应的属性信息,其中,所述属性信息包括各所述任务的任务类别;所述任务类别包括各所述任务所在进程的进程标识或者各所述任务所在线程的线程标识;所述属性信息还包括各所述任务的输入参数和输出参数;
将各所述任务的任务类别与预配置文件中存储的目标任务类别进行匹配,确定与各所述任务对应的中央处理器CPU核心标识,其中,所述预配置文件中存储有目标任务类别以及与所述目标任务类别对应的CPU核心标识;
将各所述任务调度到与其对应的CPU核心标识所指示的CPU核心;
对于每一个CPU核心,对于调度到该CPU核心的各个任务中的每一个任务,按照预设的任务执行先后顺序,确定该任务是否有前继任务,响应于该任务没有前继任务,将该任务添加到对应的任务队列,其中,所述前继任务为先于该任务执行并且输出参数与该任务的输入参数相关联的任务;
从所述任务队列的队首开始依次调度每一个任务,响应于当前执行的任务在执行过程中发出了输入/输出请求,暂停执行该任务,将该任务移动到所述任务队列的队尾,并继续调度所述任务队列中的各任务。
2.根据权利要求1所述的方法,其特征在于,所述从所述任务队列的队首开始依次调度每一个任务,响应于当前执行的任务在执行过程中发出了输入/输出请求,暂停执行该任务,将该任务移动到所述任务队列的队尾,并继续调度所述任务队列中的各任务,包括:
响应于当前执行的任务执行完成,将该任务从所述任务队列中移除,并确定该任务是否有后继任务,响应于该任务有后继任务,进一步确定该任务的后继任务对应的所有前继任务是否均已执行完成,若是,将该任务的后继任务添加到所述任务队列,并继续调度所述任务队列中的各任务,其中,所述后继任务为后于该任务执行并且输入参数与该任务的输出参数相关联的任务。
3.根据权利要求2所述的方法,其特征在于,所述方法包括:
对于在执行过程中发出输入/输出请求并且被暂停执行的每一个任务,当再次调度该任务时,响应于该任务发出的输入/输出请求有返回结果并且等待时间未超出对应的超时阈值,继续执行该任务。
4.根据权利要求3所述的方法,其特征在于,所述方法包括:
对于在执行过程中发出输入/输出请求并且被暂停执行的每一个任务,当再次调度该任务时,响应于该任务发出的输入/输出请求没有返回结果并且等待时间未超出对应的超时阈值,继续暂停执行该任务。
5.根据权利要求1-4之一所述的方法,其特征在于,所述方法包括:
对于所述任务队列中的每一个任务,当该任务在执行过程中发出输入/输出请求时,记录输入/输出请求的等待时间和输入/输出请求类型;
对于每一类型输入/输出请求,根据记录的该类型输入/输出请求的等待时间,统计该类型输入/输出请求在单位时间内的平均等待时间,并将该类型输入/输出请求对应的超时阈值设置为所述平均等待时间,其中,所述平均等待时间为在单位时间内发出的各次该类型输入/输出请求的等待时间的总和与发出的该类型输入/输出请求的总次数的比值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海优扬新媒信息技术有限公司,未经上海优扬新媒信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610890352.8/1.html,转载请声明来源钻瓜专利网。