[发明专利]一种计算任务处理方法及装置有效
申请号: | 201410015322.3 | 申请日: | 2014-01-14 |
公开(公告)号: | CN104778074B | 公开(公告)日: | 2019-02-26 |
发明(设计)人: | 周东祥 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/38 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 赵囡囡 |
地址: | 518044 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 计算 任务 处理 方法 装置 | ||
本发明涉及一种计算任务处理方法及装置,所述方法可以包括:获取包括多个子流程的计算任务;将所述计算任务的当前子流程的输入数据存入一个队列中;从所述队列中获取第一输入数据并根据与所述当前子流程对应的逻辑进行数据处理;根据所述数据处理的结果判断是否进入下一个子流程;若进入下一个子流程则将所述数据处理的结果作为所述当前子流程的下一子流程的输入数据存入另一个队列中。上述的方法及装置可提升系统处理任务的效率,减少计算资源的浪费。
技术领域
本发明涉及计算技术领域,特别涉及一种计算任务处理方法及装置。
背景技术
现在信息技术发展很快,信息处理量也越来越大。现有技术有同一个流程按照时间顺序执行。但是处理花费的时间较长。采用多任务并发进行处理可以提升计算任务的处理效率。然而在多任务并发处理的过程中,如果某个子流程出现处理失败,需要从头开始处理,相当于先前的数据处理操作被重复进行,造成计算资源的浪费。
发明内容
有鉴于此,本发明提供一种计算任务处理方法及装置,可以解决现有技术中计算资源的浪费。
一种计算任务处理方法,包括以下步骤:获取包括多个子流程的计算任务;将所述计算任务的当前子流程的输入数据存入一个队列中;从所述队列中获取第一输入数据并根据与所述当前子流程对应的逻辑进行数据处理;根据所述数据处理的结果判断是否进入下一个子流程;若进入下一个子流程则将所述数据处理的结果作为所述当前子流程的下一子流程的输入数据存入另一个队列中。
一种计算任务处理装置,所述装置包括:获取模块,用于接收包括多个子流程的计算任务;第一数据预存模块,用于将所述计算任务的当前子流程的输入数据存入一个队列中;子流程处理模块,用于从所述队列中获取第一输入数据并根据与所述当前子流程对应的逻辑进行数据处理;第一判断模块,用于根据数据处理的结果判断是否进入下一个子流程;以及第二数据预存模块,用于若所述第一判断模块的结果为进入下一个子流程,将所述数据处理的结果作为所述当前子流程的下一子流程的输入数据存入另一个队列中。
根据本实施例的计算任务处理方法,通过将子流程计算所需要的输入数据存储在队列里,从而解除了多个子流程之间的时序强依赖性。按照这种方式,每个任务处理线程并不需要等待前一子流程的运算结果,因此可以提升包括多个子流程的计算任务的处理效率,减少计算资源的浪费。
为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
图1为一个计算装置的结构框图。
图2为第一实施例提供的计算任务处理方法流程图。
图3为对应子流程创建队列的示意图。
图4为图2中的方法与一种多线程并行计算消耗时间的对比示意图。
图5为第二实施例提供的计算任务处理方法流程图。
图6为第三实施例提供的计算任务处理方法流程图。
图7为第四实施例提供的计算任务处理装置结构框图。
图8为第五实施例提供的计算任务处理装置结构框图。
图9为第六实施例提供的计算任务处理装置结构框图。
具体实施方式
为更进一步阐述本发明为实现预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明的具体实施方式、结构、特征及其功效,详细说明如后。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410015322.3/2.html,转载请声明来源钻瓜专利网。