[发明专利]一种基于任务分解的并行任务处理方法有效

专利信息
申请号: 201510188327.0 申请日: 2015-04-21
公开(公告)号: CN104793992B 公开(公告)日: 2018-05-01
发明(设计)人: 王友钊;黄静 申请(专利权)人: 浙江大学
主分类号: G06F9/48 分类号: G06F9/48
代理公司: 杭州求是专利事务所有限公司33200 代理人: 邱启旺
地址: 310058 浙江*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种基于任务分解的并行任务处理方法,该方法事件触发对象不需要经由多个队列的顺序传递,对象插入哪个对列是由对象自身的状态参量决定的,线程不需要了解它所操作的对象从哪个任务队列传递过来,将要进入哪个任务队列,只需完成自身的任务处理。事件触发对象、任务队列和线程不相互影响,便于类的封装。当业务的多个子任务不具有顺序相关性时,可将其同时插入多个队列,进行子任务的并行化处理。为各类任务分配固定数量的处理线程组,无需为每个对象创建一个专用线程。
搜索关键词: 一种 基于 任务 分解 并行 处理 方法
【主权项】:
一种基于任务分解的并行任务处理方法,其特征在于,包括以下步骤:(1)创建任务分解队列、任务分配队列、响应过滤队列以及各类任务处理队列;所述任务分解队列、任务分配队列、响应过滤队列以及各类任务处理队列均基于阻塞队列实现;(2)创建任务分解线程、任务分配线程、响应过滤线程组以及各类任务处理线程组;(3)任务分解线程从任务分解队列中获得任务对象,根据任务对象的任务编码进行子任务分解,并将子任务存入任务哈希表,分解完成后,将任务对象存入任务分配队列;所述任务对象由任务编码、任务参数和任务哈希表构成;所述任务哈希表以任务名为key,任务项为value;任务项包括任务参数、任务状态和下级任务;任务状态标识符分为:存在下级任务has_next和所有任务均处理完成done;(4)任务分配线程从任务分配队列中读取任务对象,根据任务哈希表中的任务名,将任务对象分别存入对应任务处理队列;(5)各类任务处理线程从任务处理队列中获得任务对象进行处理,任务完成后,存储任务响应,更新任务状态标识符,将任务对象插入到响应过滤队列;所述任务响应的存储方式为替换当前任务项中任务参数;所述更新任务状态标识符具体为:任务处理线程判断下级任务字段是否为空,若不为空,则用下级任务名替换当前任务名,更新任务状态标识符为has_next,并将任务对象插入下级任务对应的任务处理队列;若下级任务字段为空,则将任务状态标识符更新为done,并将任务对象存入响应过滤队列;(6)响应过滤线程从响应过滤队列中获取任务对象,判断任务哈希表中每一个任务项的任务状态标识符是否为done,若有任务状态不为done,则删除该任务对象,等待所有子任务处理完成;若所有任务状态均为done,则根据任务编码和子任务响应构建整体任务响应,完成任务的并发处理。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201510188327.0/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top