[发明专利]内存回收方法、装置、电子设备及计算机可读存储介质在审
| 申请号: | 202010779497.7 | 申请日: | 2020-08-05 |
| 公开(公告)号: | CN111966492A | 公开(公告)日: | 2020-11-20 |
| 发明(设计)人: | 周华材 | 申请(专利权)人: | OPPO广东移动通信有限公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50 |
| 代理公司: | 广州德科知识产权代理有限公司 44381 | 代理人: | 万振雄;杨中强 |
| 地址: | 523860 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 内存 回收 方法 装置 电子设备 计算机 可读 存储 介质 | ||
1.一种内存回收方法,其特征在于,包括:
当触发杀进程回收内存的机制时,获取交换分区当前的空间使用率;
从多个使用率区间中确定所述空间使用率所属的目标使用率区间;
根据所述目标使用率区间对应的内存回收规则对内存进行回收。
2.根据权利要求1所述的方法,其特征在于,所述多个使用率区间包括第一使用率区间,所述第一使用率区间为空间使用率小于第一阈值的区间;
所述根据所述目标使用率区间对应的内存回收规则对内存进行回收,包括:
若所述目标使用率区间为所述第一使用率区间,则不杀进程,对内存中的匿名页进行压缩,并将压缩后的匿名页存储到所述交换分区。
3.根据权利要求2所述的方法,其特征在于,所述多个使用率区间还包括第二使用率区间及第三使用率区间,所述第二使用率区间为空间使用率大于或等于所述第一阈值且小于第二阈值的区间,所述第三使用率区间为空间使用率大于或等于所述第二阈值的区间;
所述根据所述目标使用率区间对应的内存回收规则对内存进行回收,包括:
若所述目标使用率区间为所述第二使用率区间,则从当前运行的后台进程中选择低于第一优先级的进程杀掉;
若所述目标使用率区间为所述第三使用率区间,则从当前运行的后台进程中选择低于第二优先级的进程杀掉,其中,所述第二优先级高于所述第一优先级。
4.根据权利要求3所述的方法,其特征在于,所述根据所述目标使用率区间对应的内存回收规则对内存进行回收,包括:
若所述目标使用率区间为所述第三使用率区间,则从当前运行的后台进程中选择目标数量的进程杀掉。
5.根据权利要求1至4任一所述的方法,其特征在于,所述从多个使用率区间中确定所述空间使用率所属的目标使用率区间,包括:
根据当前调用的内存回收进程确定当前内存回收场景;
从与所述当前内存回收场景对应的多个使用率区间中确定所述空间使用率所属的目标使用率区间。
6.根据权利要求5所述方法,其特征在于,在所述当触发杀进程回收内存的机制时,获取交换分区当前的空间使用率之前,所述方法还包括:
监控内存的使用情况;
当检测到空闲内存低于第一水线时,唤醒第一内存回收进程,所述第一内存回收进程用于执行后台异步内存回收操作。
7.根据权利要求6所述的方法,其特征在于,在所述当触发杀进程回收内存的机制时,获取交换分区当前的空间使用率之前,所述方法还包括:
接收内存分配请求,并获取当前的空闲内存;
当所述当前的空闲内存低于第二水线时,唤醒第二内存回收进程,所述第二回收进程用于在分配内存时同步执行内存回收操作,所述第二水线低于所述第一水线。
8.一种内存回收装置,其特征在于,包括:
使用率获取模块,用于当触发杀进程回收内存的机制时,获取交换分区当前的空间使用率;
区间确定模块,用于从多个使用率区间中确定所述空间使用率所属的目标使用率区间;
内存回收模块,用于根据所述目标使用率区间对应的内存回收规则对内存进行回收。
9.一种电子设备,其特征在于,包括存储器及处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器实现如权利要求1至7任一所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于OPPO广东移动通信有限公司,未经OPPO广东移动通信有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010779497.7/1.html,转载请声明来源钻瓜专利网。





