[发明专利]内存空洞检测和清除的方法和装置有效
申请号: | 201110278226.4 | 申请日: | 2011-09-19 |
公开(公告)号: | CN102999427A | 公开(公告)日: | 2013-03-27 |
发明(设计)人: | 宋久元 | 申请(专利权)人: | 汉王科技股份有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02 |
代理公司: | 北京中博世达专利商标代理有限公司 11274 | 代理人: | 申健 |
地址: | 100193 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明实施例公开了一种内存空洞检测和清除的方法和装置,涉及内存优化领域,减少了内存空洞的出现,提高了内存的利用率。所述方法包括:当进程每次从堆中申请内存成功时,内存空洞检测装置将所述申请成功的内存的首地址、大小和状态作为一条内存使用记录存入内存记录链表中;所述内存空洞检测装置启动内存空洞检测装置中的定时器;所述内存空洞检测装置将所述内存记录链表中与所述被释放的内存对应的内存使用记录中的状态修改为释放;当到达所述定时器规定的时间时,检测内存空洞;当所述内存空洞的大小大于等于规定阈值时,所述内存空洞检测装置清除内存空洞,重启定时器。本发明实施例主要应用在内存优化处理过程中。 | ||
搜索关键词: | 内存 空洞 检测 清除 方法 装置 | ||
【主权项】:
一种内存空洞检测和清除的方法,其特征在于,包括:当进程每次从堆中申请内存成功时,内存空洞检测装置将所述申请成功的内存的首地址、大小和状态作为一条内存使用记录存入内存记录链表中,所述状态为使用;当第一条内存使用记录存入内存记录链表中时,所述内存空洞检测装置启动内存空洞检测装置中的定时器;所述进程从堆中申请成功的内存被释放时,所述内存空洞检测装置将所述内存记录链表中与所述被释放的内存对应的内存使用记录中的状态修改为释放;当到达所述定时器规定的时间时,所述内存空洞检测装置从所述内存记录链表的链表首开始,分别查找出第一条状态为释放的内存使用记录中的首地址一,和在所述首地址一之后查找到的第一条状态为使用的内存使用记录中的首地址二,所述首地址一和首地址二之间的堆中内存区域为内存空洞,其中所述内存空洞的大小为所述首地址一和首地址二之间的堆中内存区域的所有内存大小的总和,所述链表首为存入所述内存记录链表中的第一条内存使用记录;当所述内存空洞的大小大于等于规定阈值时,所述内存空洞检测装置清除内存空洞,重启定时器。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于汉王科技股份有限公司,未经汉王科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201110278226.4/,转载请声明来源钻瓜专利网。
- 上一篇:实心胎轮辋
- 下一篇:一种具有凸状轮辐的钢圈