[发明专利]任务的分配方法、装置、电子设备、服务器及存储介质在审
申请号: | 202010418539.4 | 申请日: | 2020-05-18 |
公开(公告)号: | CN111625329A | 公开(公告)日: | 2020-09-04 |
发明(设计)人: | 王天舟;曹福祥;王至前 | 申请(专利权)人: | 北京达佳互联信息技术有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 广州华进联合专利商标代理有限公司 44224 | 代理人: | 方高明 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 任务 分配 方法 装置 电子设备 服务器 存储 介质 | ||
本公开关于一种任务的分配方法、装置、电子设备、服务器及存储介质。所述方法包括:获取待分配任务的任务标识;在任务标识、任务数目和线程池的映射关系中,查询是否存在所述待分配任务的任务标识对应的第一线程池;如果不存在所述待分配任务的任务标识对应的第一线程池,则在预设的各线程池中,确定待执行任务数目最小的第二线程池,在任务标识、任务数目和线程池的映射关系中,添加所述待分配任务的任务标识和所述第二线程池的映射关系,并将所述待分配任务的任务标识对应的任务数目置为1;将所述待分配任务分配至所述第二线程池。采用本公开可以防止出现线程池饥饿现象。
技术领域
本公开涉及计算机技术领域,尤其涉及一种任务的分配方法、装置、电子设备、服务 器及存储介质。
背景技术
在任务调度时,具有相同任务标识的任务需要分配至同一线程池中,以保证具有相同 任务标识的任务可以按照任务提交的顺序串行执行。
目前,在对任务进行线程池分配时,首先,将该任务的任务标识按照线程池的数目进 行取模运算,得到余数。然后,将该任务分配至线程池标识为该余数的线程池中。这样,可以保证具有相同任务标识的任务能够分配至同一线程池。
然而,当具有相同第一任务标志的第一任务的数量较多时,将导致该第一任务对应的 线程池中,任务排队严重。此时,如果第二任务标志(与第一任务标志不同,但取模的余 数相同)的第二任务也被分配至该线程池中,则会导致该第二任务需要等待较长时间才能 够被执行,从而出现线程池饥饿现象。
发明内容
本公开提供一种任务的分配方法、装置、电子设备、服务器及存储介质,以至少解决 相关技术中现线程池饥饿的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种任务的分配方法,所述方法包括:
获取待分配任务的任务标识;
在任务标识、任务数目和线程池的映射关系中,查询是否存在所述待分配任务的任务 标识对应的第一线程池;
如果不存在所述待分配任务的任务标识对应的第一线程池,则在预设的各线程池中, 确定待执行任务数目最小的第二线程池,在任务标识、任务数目和线程池的映射关系中, 添加所述待分配任务的任务标识和所述第二线程池的映射关系,并将所述待分配任务的任 务标识对应的任务数目置为1;
将所述待分配任务分配至所述第二线程池。
作为一种可选的实施方式,所述方法还包括:
如果存在所述待分配任务的任务标识对应的第一线程池,则在任务标识、任务数目和 线程池的映射关系中,将所述待分配任务的任务标识对应的任务数目加1,并将所述待分 配任务分配至所述第一线程池。
作为一种可选的实施方式,所述方法还包括:
当所述待分配任务执行结束后,在任务标识、任务数目和线程池的映射关系中,将所 述待分配任务的任务标识对应的任务数目减1。
作为一种可选的实施方式,所述方法还包括:
如果所述待分配任务的任务标识对应的任务数目为0,则在任务标识、任务数目和线 程池的映射关系中,删除所述待分配任务的任务标识和所述第二线程池的映射关系。
根据本公开实施例的第二方面,提供一种任务的分配装置,所述装置包括:
获取模块,被配置为获取待分配任务的任务标识;
查询模块,被配置为在任务标识、任务数目和线程池的映射关系中,查询是否存在所 述待分配任务的任务标识对应的第一线程池;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京达佳互联信息技术有限公司,未经北京达佳互联信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010418539.4/2.html,转载请声明来源钻瓜专利网。