[发明专利]一种管理内存池的方法、装置及终端在审
申请号: | 201910733930.0 | 申请日: | 2019-08-09 |
公开(公告)号: | CN112346848A | 公开(公告)日: | 2021-02-09 |
发明(设计)人: | 柳迎春 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 上海晨皓知识产权代理事务所(普通合伙) 31260 | 代理人: | 成丽杰 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 管理 内存 方法 装置 终端 | ||
本发明公开了一种管理内存池的方法、装置及终端,本发明通过设置线程对应的归还队列和空闲队列,通过归还队列来管理异线程释放的内存块,从而实现对不同线程之间的共享内存块进行管理,并通过归还队列和空闲队列来对该线程的所有内存块进行管理,从而实现线程与内存资源不是完全锁定的,进而有效解决了现有的线程需要锁定内存资源,从而影响多线程并发性能的问题。
技术领域
本发明涉及通讯领域,特别是涉及一种管理内存池的方法、装置及终端。
背景技术
在移动通信领域,5G的网络架构将是云化的软件结构,要求软件的组织不再是一个单体的软件,软件要按不同的维度划分为各类服务,服务又可以细化为由各种微服务组成,即所谓微服务架构。容器技术的兴起,更促进了微服务架构的发展。
5G时代的万物互联需求,要求容器具有高并发的处理能力。而容器的部署非常灵活,一个节点上可能部署多个容器,容器高效的使用内存资源,并适应高并发的场景,有利于系统整体性能的提升。
业界目前已经有了很多管理内存的框架,而且有些开发语言本身就支持内存池技术,但大多诞生于互联网领域,通用性较好,但应用于多线程高并发场景,就会存在锁资源的竞争,从而影响内存的并发处理性能。
发明内容
本发明提供了一种管理内存池的方法、装置及终端,用以解决现有技术中由于线程锁定内存资源而影响多线程并发性能的问题。
为解决上述技术问题,第一方面,本发明提供一种管理内存池的方法,该方法包括:预设各线程对应的内存池以及各线程对应的归还队列和空闲队列,所述内存池中包含若干内存块;针对任一线程,所述归还队列用于存放该线程提供给其他线程使用后释放的内存块的索引,所述空闲队列用于存放该线程的空闲的内存块的索引;基于所述归还队列和所述空闲队列,对各线程的内存池进行管理。
优选地,所述内存池上均设有内存标识,所述内存标识用于标识所述内存池内的内存块所对应的内存池。
优选地,所述基于所述归还队列和所述空闲队列,对各线程申请内存块进行管理,包括:当任一线程申请内存块时,将该线程所对应的归还队列内的内存块迭代回收到该线程所对应的空闲队列,并从所述空闲队列中为该线程分配内存块。
优选地,所述归还队列的内存块的索引为按照不同异线程下内存块的不同的预设固定长度分类进行存放;所述异线程包括不同于本线程的其他线程。
优选地,当任一线程申请内存块时,将该线程所对应的归还队列内的内存块迭代回收到该线程所对应的空闲队列,并从所述空闲队列中为该线程分配内存块,包括:
设申请内存块的任一线程为内存申请线程,将所述内存申请线程所对应的归还队列内第一异线程释放的各个不同的预设固定长度类别的内存块迭代地从第一个内存块至倒数第二个内存块回收到所述内存申请线程所对应的空闲队列;当在迭代地回收所述第一异线程释放的内存块后,在所述内存申请线程所对应的空闲队列中不包含所述内存申请线程所申请的内存块时,则从所述内存池里的预设内存片中申请内存块,如果在所述预设内存片内没有找到所申请的内存块时,则迭代地回收所述归还队列内第二异线程释放的各个不同的预设固定长度类别的内存块到所述空闲队列,并判断所述内存申请线程所对应的空闲队列中是否有所申请的内存块,如果没有,则继续迭代地回收其他异线程释放的内存块,如果遍历所有归还队列均没有找到所申请的内存块,则从系统中申请新的预设内存片,并从该预设内存片中给所述线程分配内存块;其中,所述预设内存片中包含设定数量的内存块。
优选地,所述基于所述归还队列和所述空闲队列,对各线程的内存池进行管理,还包括:
将所述线程所对应的归还队列内的内存块迭代回收到所述线程所对应的空闲队列之前,判断所述内存申请线程所申请的内存块的大小是否超过预设的最大内存块阈值,如果是,则从所述预设内存片中申请内存块,所申请的内存块的大小等于所述内存申请线程所申请内存块的大小。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910733930.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:工业仪表设备及其界面操作方法
- 下一篇:一种活血黑发生发原液