【技术实现步骤摘要】
任务调度方法及装置
本公开涉及计算机任务调度领域,尤其涉及任务调度方法及装置。
技术介绍
现有软件设计中,为了实现某种功能,通常会将软件流程从整体上划分为多个任务,各个任务之间顺序或并发执行。当多个任务并发共同完成一个任务时,整个流程运转起来之后,整个流程的执行时长取决于耗时最长的任务的执行时间。在这种情况下,如果某一个任务耗时很长,则会导致整个系统运行速度慢。另外,在上述流程中,前一个任务的输出结果是后一个任务的输入数据,现在通常的做法是:针对相邻的两个任务分别开启一个线程,前一个线程的输出结果放入一个队列中,然后,通知后一个线程对这些数据进行获取,其基本模型可参照图1。但是,上述处理方式会使得整体处理流程的流畅性不佳,原因是:两个线程对同一个队列进行操作,一个进入数据的写入,一个进行数据的读取,但是由于队列本身的特性,队列会在每个线程访问过程中加锁,也就是,前一个线程和后一个线程并不能同时操作队列,因此,数据的写入和读取不能同时进行。
技术实现思路
本公开实施例提供一种任务调度方法及装置,本公 ...
【技术保护点】
1.一种任务调度方法,其特征在于,所述方法包括:/n检测当前任务的执行时长,判断当前任务的执行时长是否超过预设阈值;/n如果当前任务的执行时长超过预设阈值,则将所述当前任务拆分为多个子任务;/n按照流水线方式依次调度所述多个子任务;其中,每个子任务的执行时长小于所示所述当前任务的执行时长。/n
【技术特征摘要】
1.一种任务调度方法,其特征在于,所述方法包括:
检测当前任务的执行时长,判断当前任务的执行时长是否超过预设阈值;
如果当前任务的执行时长超过预设阈值,则将所述当前任务拆分为多个子任务;
按照流水线方式依次调度所述多个子任务;其中,每个子任务的执行时长小于所示所述当前任务的执行时长。
2.根据权利要求1所述的任务调度方法,其特征在于,所述将所述当前任务拆分为多个子任务包括:
按照当前任务的属性信息将所述当前任务拆分为多个子任务;其中所述属性信息包括多个子功能信息,所述多个子任务和所述多个子功能一一对应。
3.根据权利要求1所述的任务调度方法,其特征在于,所述将所述当前任务拆分为多个子任务之后,所述方法还包括:
在相邻的两个子任务之间生成任务队列,使得相邻的两个子任务中的前一个子任务对该任务队列进行写操作,后一个子任务对该任务队列进行读操作。
4.根据权利要求1所述的任务调度方法,其特征在于,所述多个子任务通过多线程完成;所述按照流水线方式依次调度所述多个子任务包括:
调度前一个子任务的线程输出作为后一个子任务的线程输入。
5.根据权利要求1至4任一项所述的任务调度方法,其特征在于,所述当前任务为图像处理任务,所述多个子任务包括:分包子任务、协议封装子任务和加密子任务。
...
【专利技术属性】
技术研发人员:范志刚,朱英龙,
申请(专利权)人:西安万像电子科技有限公司,
类型:发明
国别省市:陕西;61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。