[发明专利]一种任务处理的方法及装置有效
申请号: | 201811338309.6 | 申请日: | 2018-11-12 |
公开(公告)号: | CN109471711B | 公开(公告)日: | 2021-03-02 |
发明(设计)人: | 王身海;陆昭鸣 | 申请(专利权)人: | 中国银行股份有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 丁曼曼;王宝筠 |
地址: | 100818 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 任务 处理 方法 装置 | ||
本发明提供一种任务处理的方法及装置,只有对加入到线程池中的待处理任务进行处理时,才确定与待处理任务对应的任务处理器,并利用确定的任务处理器对待处理任务进行处理,而从任务池中读取待处理任务并将读取到的待处理任务加载到线程池的任务管理操作是不需要任务处理器处理的,实现了任务管理与任务业务处理逻辑的解耦。且当需要在任务池中增加待处理任务时,从任务池中读取任务并将读取到的任务加载到线程池的任务管理操作是不需要修改的,因此只需要对新增加的任务设置对应的业务处理逻辑,降低了开发工作量,缩短了开发周期,且由于只需要修改业务处理逻辑,因此降低了开发难度,进而降低了开发的出错概率,可以满足业务快速发展的需求。
技术领域
本发明属于计算机技术领域,尤其涉及一种任务处理的方法及装置。
背景技术
现有技术中对任务进行处理的方法为:为每种任务设置一个任务处理器,基于配置文件,通过任务处理器实现对任务的加载,并基于任务处理器中的线程管理功能实现将加载后的任务加入到线程中,最后基于任务处理器中的业务处理逻辑对线程中的任务进行处理。
由于任务处理器包括了任务加载、业务逻辑处理、线程管理功能,使得在扩展任务时,为了能够对新扩展的任务进行处理,需要为新扩展的任务重新设置一个包括任务加载、业务逻辑处理、线程管理功能的任务处理器。这大大增加了开发人员的工作量,导致开发周期长,而且在开发过程中不仅需要考虑对新扩展业务的业务处理逻辑的设置,而且需要综合考虑对任务加载以及线程管理功能的设置,需要重新开发设置的内容多,导致出错概率提高。
因此,现有技术中对任务处理的方法中存在开发周期长且开发过程出错概率高,无法满足业务快速发展的需求。
发明内容
有鉴于此,本发明的目的在于提供一种任务处理的方法及装置,以解决现有技术中对任务处理的方法中存在的开发周期长且出错概率高,无法满足业务快速发展需求的问题。
技术方案如下:
本发明提供一种任务处理的方法,包括:
从任务池中读取待处理任务;其中,所述任务池中的任务具有配置信息,所述配置信息至少包括任务调度信息以及任务处理器映射关系;
获取读取到的所述待处理任务的配置信息;
检测到存在处于空闲状态的线程后,依据所述任务调度信息将所述待处理任务加载到线程池中;
从所述任务处理器映射关系中查找与线程池中的所述待处理任务对应的任务处理器;
基于所述任务处理器对所述线程池中的所述待处理任务进行处理。
优选地,所述从任务池中读取待处理任务包括:
获取任务池中所有任务的优先级;
按照任务的优先级,从任务池中读取预设数量的待处理任务;其中,所述待处理任务的状态为待处理。
优选地,所述从任务池中读取待处理任务包括:
设置业务操作锁;
从任务池中读取处于待处理状态的待处理任务,并将任务池中已经被读取到的待处理任务的状态更改为已读取;
解锁所述业务操作锁。
优选地,所述检测到存在处于空闲状态的线程后,依据所述任务调度信息将所述待处理任务加载到线程池中包括:
检测到存在处于空闲状态的线程后,获取任务代理器;
依据所述任务调度信息将所述待处理任务的配置信息注入到所述任务代理器中,以实现将所述待处理任务加载到线程池中。
优选地,所述从所述任务处理器映射关系中查找与所述线程池中的所述待处理任务对应的任务处理器包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国银行股份有限公司,未经中国银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811338309.6/2.html,转载请声明来源钻瓜专利网。