[发明专利]一种对象释放方法、装置、设备和存储介质有效
申请号: | 201910745093.3 | 申请日: | 2019-08-13 |
公开(公告)号: | CN110442404B | 公开(公告)日: | 2022-07-05 |
发明(设计)人: | 张磊 | 申请(专利权)人: | 武汉斗鱼鱼乐网络科技有限公司 |
主分类号: | G06F9/448 | 分类号: | G06F9/448;G06F11/36 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 430070 湖北省武汉市东湖新技术开发区软件园东路*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 对象 释放 方法 装置 设备 存储 介质 | ||
本发明实施例公开了一种对象释放方法、装置、设备和存储介质,该方法包括:将组件的组件标识与组件中的类class类型的类对象作为函数输入参数,调用数据管理对象中的数据导航函数,确定类对象对应的实例对象,并将实例对象与实例对象的对象标识存储至数据缓存对象中组件标识对应的目标位置处;当检测到组件的组件销毁操作时,将组件标识作为函数输入参数,调用数据管理对象中的数据释放函数,将数据缓存对象中存储的组件标识、组件标识对应的实例对象以及实例对象的对象标识进行释放。通过本发明实施例的技术方案,可以实现实例对象的及时释放,有效避免出现内存泄漏的问题,保证应用程序的正常运行。
技术领域
本发明实施例涉及计算机技术,尤其涉及一种对象释放方法、装置、设备和存储介质。
背景技术
随着计算机技术的快速发展,各种应用程序APP(Application)被研发应用在终端设备中,以满足用户日益增长的需求。在每个应用程序中往往需要创建各种组件以及组件中的实例对象来实现应用程序的页面展示、交互、下载、状态查询等功能。
现有技术中,基于Android系统开发的应用程序中通常是直接利用new关键字进行实例化操作,创建出组件中所需的实例对象,并且当组件中的每个函数需要使用实例对象时均会进行创建,从而会存在大量的实例对象。然而,现有技术中并不存在对创建的实例对象进行释放的管理操作,使得系统无法自动回收分配给实例对象的内存,从而在实例对象过多时会导致大量内存泄漏的问题,进而影响应用程序的正常运行。
发明内容
本发明实施例提供了一种对象释放方法、装置、设备和存储介质,以实现实例对象的及时释放,有效避免出现内存泄漏的问题,保证应用程序的正常运行。
第一方面,本发明实施例提供了一种对象释放方法,包括:
将组件的组件标识与所述组件中的类class类型的类对象作为函数输入参数,调用数据管理对象中的数据导航函数,确定所述类对象对应的实例对象,并将所述实例对象与所述实例对象的对象标识存储至数据缓存对象中所述组件标识对应的目标位置处;
当检测到所述组件的组件销毁操作时,将所述组件标识作为函数输入参数,调用所述数据管理对象中的数据释放函数,将所述数据缓存对象中存储的所述组件标识、所述组件标识对应的所述实例对象以及所述实例对象的对象标识进行释放。
第二方面,本发明实施例还提供了一种对象释放装置,包括:
数据导航模块,用于将组件的组件标识与所述组件中的类class类型的类对象作为函数输入参数,调用数据管理对象中的数据导航函数,确定所述类对象对应的实例对象,并将所述实例对象与所述实例对象的对象标识存储至数据缓存对象中所述组件标识对应的目标位置处;
对象释放模块,用于当检测到所述组件的组件销毁操作时,将所述组件标识作为函数输入参数,调用所述数据管理对象中的数据释放函数,将所述数据缓存对象中存储的所述组件标识、所述组件标识对应的所述实例对象以及所述实例对象的对象标识进行释放。
第三方面,本发明实施例还提供了一种设备,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任意实施例所提供的对象释放方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如本发明任意实施例所提供的对象释放方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼鱼乐网络科技有限公司,未经武汉斗鱼鱼乐网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910745093.3/2.html,转载请声明来源钻瓜专利网。