[发明专利]一种内存释放方法及系统有效
申请号: | 201910221397.X | 申请日: | 2019-03-22 |
公开(公告)号: | CN109947571B | 公开(公告)日: | 2021-07-20 |
发明(设计)人: | 田江明 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
地址: | 100080 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 内存 释放 方法 系统 | ||
本发明公开了一种内存释放方法及系统,基于内存中每个数据块的多个预设属性,每个预设属性在预设优先级顺序中的位置,以及每个预设属性的属性值,得到表征数据块重要等级的特征编码值,选取特征编码值小的数据块作为目标数据块进行释放。本发明在确定需要释放的数据块时,通过综合每个数据块的多个预设属性、每个预设属性在预设优先级顺序中的位置,以及每个预设属性的属性值,来确定数据块的重要等级,从而基于数据块的重要等级确定是否释放该数据块,因此大大简化了数据块在内存的释放逻辑,有效避免了数据块释放错误情况的出现。
技术领域
本发明涉及数据缓存技术领域,更具体的说,涉及一种内存释放方法及系统。
背景技术
因业务及客户端逻辑架构原因,通常会根据客户端的内容获取速度、网络带宽情况,为每种信号源内容提供若干分辨率的信号获取链路,每个清晰度的视频信号按照时间轴分若干分段,每个分段分若干数据块。在视频播放期间,内存中通常会存在已经播放的分段,未播放的分段,未播放但已下载且未保存的数据块等等。为了不影响视频的正常播放,内存在进行数据块释放时,都需要对上述情况做权衡对比,确定哪个数据块是可以释放的,当前播放位置更适合释放哪个数据块等等。
综上,现有方案中数据块在内存的释放逻辑较为复杂,因此,很容易出现数据块释放错误的情况。
发明内容
有鉴于此,本发明公开一种内存释放方法及系统,以实现简化数据块在内存的释放逻辑,减少内存的数据处理量,有效避免数据块释放错误情况的出现。
一种内存释放方法,包括:
确定内存中每个数据块的多个预设属性中,每个所述预设属性在预设优先级顺序中的位置;
确定每个所述数据块的每个所述预设属性的属性值;
基于每个所述数据块的所有的所述预设属性,每个所述预设属性在所述预设优先级顺序中的所述位置,以及每个所述预设属性的所述属性值,得到每个所述数据块的特征编码值,所述特征编码值表征相对应的数据块的重要等级;
当满足预设释放条件时,选取预设数量的所述数据块作为目标数据块进行释放,每个所述目标数据块的所述特征编码值小于所述内存中除所述目标数据块以外的任何一个所述数据块的所述特征编码值。
可选的,所述预设属性为如下属性中的任意一种:
数据块所在分段为当前播放分段;
数据块所在分段为当前播放视频的分段;
数据块为已播放的数据块;
数据块为已保存的数据块;
数据块所在当前分段索引距当前播放分段索引的距离;
数据块的块编号与当前播放的数据块的块编号的距离;
数据块的添加时间。
可选的,所述确定每个所述数据块的每个所述预设属性的属性值,具体包括:
EPT_PLAY:数据块所在分段为当前播放分段,如果是,则EPT_PLAY相对应的属性值为:1;如果否,则EPT_PLAY相对应的属性值为:0;
EPT_VID:数据块所在分段为当前播放视频的分段,如果是,则EPT_VID相对应的属性值为:1;如果否,则EPT_VID相对应的属性值为:0;
EPT_PLAYED:数据块为已播放的数据块,如果是,则EPT_PLAYED相对应的属性值为:1;如果否,则EPT_PLAYED相对应的属性值为:0;
EPT_SAVED:数据块为已保存的数据块,如果是,则EPT_SAVED相对应的属性值为:1;如果否,则EPT_SAVED相对应的属性值为:0;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910221397.X/2.html,转载请声明来源钻瓜专利网。