[发明专利]一种线程数量控制方法及设备有效
申请号: | 201710525715.2 | 申请日: | 2017-06-30 |
公开(公告)号: | CN107463441B | 公开(公告)日: | 2020-10-27 |
发明(设计)人: | 李峰;王赟;刘宇宁;赵雨佳 | 申请(专利权)人: | 大唐软件技术股份有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 莎日娜 |
地址: | 100094 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 线程 数量 控制 方法 设备 | ||
本发明提供了一种线程数量控制方法及设备,属于计算机技术领域。本发明实施例提供的线程数量控制方法及设备,可以获取当前系统环境参数,然后根据当前系统环境参数来确定最大线程数,在当前系统环境参数变化时,即,系统的运行状态发生变化时,可实现最大线程数的实时调节,保证了系统资源能够最大程度得到合理化的利用,使系统资源利用率能够保持最优,同时避免了由于所建立线程的数量过大而导致系统不稳定的问题,保证了系统的稳定性。
技术领域
本发明属于计算机技术领域,特别是涉及一种线程数量控制方法及设备。
背景技术
计算机系统中,会使用各种系统资源进行任务处理,当有任务需要处理时,系统会收到访问指定系统资源的请求,系统对该请求建立线程,然后利用所建立的线程对该请求进行处理。为了充分利用系统资源,通常会采用多线程方式实现对多个请求的并行处理。然而过高的线程数量会因资源争用、线程切换等导致过多的资源消耗在非必要任务操作上,使得系统因资源消耗过多而导致系统不稳定影响对请求进行处理的效率。因此,需要对线程数量进行控制以使资源利用达到最优。
现有技术中,通常是在系统启动时,设置一个最大线程数量,并控制当前已建立的线程数量不大于所预先设置的该最大线程数量,进而实现线程控制。
然而,在系统运行负载较大的时候,如果继续根据现有技术中预先设置的最大线程数来建立线程,可能会出现建立的线程数量过多而导致系统不稳定,进而影响系统的资源利用率。
发明内容
本发明提供一种线程数量控制方法及设备,以便解决线程数量过多而导致系统不稳定,进而影响系统的资源利用率问题。
依据本发明的第一方面,提供了一种线程数量控制方法,该方法包括:
获取当前系统环境参数值;
将所述当前系统环境参数值在预设的线程映射表中进行匹配,确定当前最大线程数;其中,所述预设的线程映射表用于表示系统环境参数值与最大线程数的对应关系;所述当前最大线程数是系统在当前状态下能够运行的最大线程数。
可选的,所述当前系统环境参数值包括:当前中央处理器CPU占有率值、当前丢包率值以及当前CPU温度值;
所述将所述当前系统环境参数值在预设的线程映射表中进行匹配,确定当前最大线程数的步骤,包括:
分别将当前CPU占有率值、当前丢包率值以及当前CPU温度值在预设的线程映射表中匹配,确定出所述当前CPU占有率值对应的第一线程数、当前丢包率值对应的第二线程数以及当前CPU温度值对应的第三线程数;
将所述第一线程数、第二线程数以及第三线程数中最小的线程数确定为当前最大线程数。
可选的,所述方法还包括:
在系统开机时,根据配置文件确定预设最大线程数,以作为当前最大线程数。
可选的,所述根据配置文件确定预设最大线程数的步骤,包括:
获取配置文件中初始配置子文件中的初始线程数;
当系统为首次开机时,将所述初始线程数确定为预设最大线程数;
当系统不为首次开机时,提取所述配置文件中的中间配置子文件中的使用率最高线程数,将所述使用率最高线程数确定为预设最大线程数。
可选的,所述方法还包括:
当系统中有待建任务时,判断当前线程数是否小于当前最大线程数;
若所述当前线程数小于当前最大线程数,则针对所述待建任务建立对应线程。
依据本发明的第二方面,提供了一种线程数量控制设备,该设备包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大唐软件技术股份有限公司,未经大唐软件技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710525715.2/2.html,转载请声明来源钻瓜专利网。