[发明专利]一种线程获取方法及设备有效
申请号: | 201510583969.0 | 申请日: | 2015-09-14 |
公开(公告)号: | CN106528065B | 公开(公告)日: | 2019-11-08 |
发明(设计)人: | 王世纪 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
代理公司: | 北京睿博行远知识产权代理有限公司 11297 | 代理人: | 龚家骅 |
地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本申请公开了一种线程获取方法及设备,通过应用本申请实施例所提出的技术方案,解决了现有技术在通过线程池并发获得线程的时候,需要进行加锁判断线程是否空闲,排队获取线程,从而导致获取线程效率低下的问题。本申请实施例所提出的技术方案在应用程序获取线程池中的线程执行操作时,不需要进行加锁,尽量减少了任务与任务之间的资源争用,提高了获取执行任务的线程的效率,进而增强应用程序的伸缩性和健壮性。 | ||
搜索关键词: | 一种 线程 获取 方法 设备 | ||
【主权项】:
1.一种线程获取方法,其特征在于,所述方法包括:在应用服务器启动时,将线程池划分为多个线程集合;当确认一个或多个待执行用户任务需要从所述线程池中获取线程进行执行操作时,分别确定各待执行用户任务所归属的线程集合;分别判断所确定的各线程集合中是否有空闲线程;当判断当前线程集合中有空闲线程时,将所述空闲线程返回给归属到所述当前线程集合的待执行用户任务;所述在应用服务器启动时,将线程池划分为多个线程集合之后,还包括:为各所述线程集合设置最小线程数量和最大线程数量;为各所述线程集合创建最小线程数量的线程;初始化包含所述最小线程数量的线程的各所述线程集合;所述分别判断所确定的各线程集合中是否有空闲线程之后,还包括:当判断当前线程集合中没有空闲线程时,判断在所述当前线程集合中执行操作的用户任务数量是否大于为所述线程集合设置的最大线程数量;如果没有大于,则在所述当前线程集合中创建一个线程,供归属到所述当前线程集合的待执行用户任务使用;如果大于,则根据预设的线程替换规则,判断在所述线程池中的其他线程集合中是否可以为所述待执行的用户任务获取线程,如果可以,则将获取到的线程返回给所述待执行用户任务,如果不可以,则返回异常提示消息。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510583969.0/,转载请声明来源钻瓜专利网。