[发明专利]一种任务执行方法和装置在审
| 申请号: | 201811502731.0 | 申请日: | 2018-12-10 |
| 公开(公告)号: | CN111290842A | 公开(公告)日: | 2020-06-16 |
| 发明(设计)人: | 郑红阳 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/52 |
| 代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 张一军;郭晗 |
| 地址: | 100086 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 任务 执行 方法 装置 | ||
本发明公开了一种任务执行方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:按照任务间的依赖关系生成任务队列,并在主队列中对各任务队列排序,所述任务间的依赖关系决定所述任务队列中的任务执行顺序,所述主队列决定所述各任务队列的执行顺序;循环利用线程池中的线程,按照所述主队列中任务队列的顺序,执行所述各任务队列中的任务。该实施方式能够解决各任务之间耦合性问题,从而解决线程阻塞问题,线程重用性好,无需频繁切换线程,内存资源利用率和CPU利用率高,还解决线程频繁创建和销毁的问题,提高系统整体稳定性,降低内存泄漏风险。
技术领域
本发明涉及计算机技术领域,尤其涉及一种任务执行方法和装置。
背景技术
目前多核程序设计中,采用线程池或者多线程来实现程序并发执行。
线程池适合各任务间耦合度不高的场景,如果多个任务间有因果关系,则线程池某个线程必须等待其他线程的执行结果,导致该线程阻塞,降低程序执行效率。例如,如果每个用户建立一个会话,用户的各操作步骤有因果关系,采用线程池实现并发将导致很多线程阻塞。
多线程采用一个会话独立对应一个线程的策略,虽然可以解决并发情况下线程阻塞的问题,但存在如下缺陷:
线程没有得到很好重用,如果一个会话目前没有任务,此线程将被闲置,其他会话也不能复用此线程;
一般大型程序要同时处理成千上万个会话,这样会创建上万个线程,操作系统为每个线程申请至少8兆内存,总的内存量不可估计;
当前一般CPU(中央处理器)最多有几十个核心,如果有几千个线程,这些线程必将轮流获取CPU时间片,导致线程间频繁切换,频繁陷入内核级,cache(缓存)中标几率变小,程序执行性能降低;
线程频繁创建和删除,降低系统整体稳定性,增加内存泄漏风险。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
采用线程池的方案导致线程阻塞;采用多线程的方案线程无法重用,线程过多导致内存资源浪费,线程间频繁切换使得CPU利用率低,频繁创建和销毁线程,降低系统整体稳定性,增加内存泄漏风险。
发明内容
有鉴于此,本发明实施例提供一种任务执行方法和装置,能够解决各任务之间耦合性问题,从而解决线程阻塞问题,线程重用性好,无需频繁切换线程,内存资源利用率和CPU利用率高,还解决线程频繁创建和销毁的问题,提高系统整体稳定性和程序执行性能,降低内存泄漏风险。
为实现上述目的,根据本发明实施例的一个方面,提供了一种任务执行方法。
一种任务执行方法,包括:按照任务间的依赖关系生成任务队列,并在主队列中对各任务队列排序,所述任务间的依赖关系决定所述任务队列中的任务执行顺序,所述主队列决定所述各任务队列的执行顺序;循环利用线程池中的线程,按照所述主队列中任务队列的顺序,执行所述各任务队列中的任务。
可选地,按照任务间的依赖关系生成任务队列,并在主队列中对各任务队列排序的步骤,包括:根据任务间的依赖关系,判断输入的任务是否有对应的任务队列;若是,则将所述输入的任务添加到对应的任务队列;否则,为所述输入的任务生成新的任务队列,并将所述新的任务队列排列在所述主队列中。
可选地,根据任务间的依赖关系,判断输入的任务是否有对应的任务队列的步骤,包括:根据任务间的依赖关系,判断所述输入的任务依赖的队列当前是否为空队列;如果是,则判断所述空队列是否正在所述线程中执行,若是,则所述输入的任务有对应的任务队列,若否,则所述输入的任务无对应的任务队列;如果所述输入的任务依赖的队列当前不为空队列,则所述输入的任务有对应的任务队列。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811502731.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:打磨机底板组件及打磨机
- 下一篇:一种智能家具运输用专用拖车





