一种多线程间资源分配方法及系统
摘要文本
本发明提供一种多线程间资源分配方法及系统,在接收到用于请求运行至少一个第一线程的第一任务时,确定各第一线程对应的第一运行内存,第一运行内存为预测得到的对应第一线程完成运行所占用的总内存。若各第一线程对应的第一运行内存的和大于待分配的内存,则减少预设数量个目标第一线程对应的第一运行内存。其中,目标第一线程为至少一个第一线程中对应有最大的第一运行内存的第一线程。基于各第一线程对应的第一运行内存,在待分配的内存中为各第一线程分配对应的内存。其中,不同的第一线程分配的内存不同。本发明能够动态的为多线程进行资源分配,从而避免在多线程环境下出现锁竞争的问题。
申请人信息
- 申请人:中诚华隆计算机技术有限公司
- 申请人地址:100012 北京市朝阳区来广营乡紫月路18号院3号楼8层
- 发明人: 中诚华隆计算机技术有限公司
专利详细信息
| 项目 | 内容 |
|---|---|
| 专利名称 | 一种多线程间资源分配方法及系统 |
| 专利类型 | 发明授权 |
| 申请号 | CN202311820091.9 |
| 申请日 | 2023/12/27 |
| 公告号 | CN117472593B |
| 公开日 | 2024/3/22 |
| IPC主分类号 | G06F9/50 |
| 权利人 | 中诚华隆计算机技术有限公司 |
| 发明人 | 王嘉诚; 张少仲 |
| 地址 | 北京市朝阳区来广营乡紫月路18号院3号楼8层 |
专利主权项内容
1.一种多线程间资源分配方法,其特征在于,包括:接收用于请求运行至少一个第一线程的第一任务;响应于所述第一任务,确定各所述第一线程对应的第一运行内存,所述第一运行内存为预测得到的对应第一线程完成运行所占用的总内存;若各所述第一线程对应的第一运行内存的和大于待分配的内存,则减少预设数量个目标第一线程对应的第一运行内存;其中,所述目标第一线程为所述至少一个第一线程中对应有最大的第一运行内存的所述第一线程;并且,对于所述预设数量个目标第一线程中的任一目标第一线程,所述任一目标第一线程对应的第一运行内存被减少的数值与所述任一目标第一线程对应的第一运行内存的大小相关联:对于所述至少一个第一线程中的任一第一线程,基于所述任一第一线程对应的第一运行内存,在待分配的内存中为所述任一第一线程分配对应的内存;其中,不同的所述第一线程分配的内存不同;检测到所述至少一个第一线程中存在运行完毕的第一线程,释放为所述运行完毕的第一线程分配的内存;或者,检测到所述至少一个第一线程中存在运行过程中被分配的内存被全部占用的第一线程,增加为所述运行过程中被分配的内存被全部占用的第一线程分配的内存;其中,所述减少预设数量个目标第一线程对应的第一运行内存,还包括:若所述至少一个第一线程对应的内存差处于预设范围内,则基于预设比例和所述至少一个第一线程的数量确定所述预设数量;其中,所述至少一个第一线程对应的内存差基于各所述第一线程对应的第一运行内存的和与所述待分配的内存之间的差值确定;所述预设范围与所述预设比例存在对应关系。