对象处理方法及系统技术方案

技术编号:17406492 阅读:51 留言:0更新日期:2018-03-07 04:31
本公开提供了一种对象处理方法,包括:获取加载到内存中的至少一个对象;确定至少一个对象的引用次数,其中,引用次数用于表示至少一个对象在预设时间段内被页面引用以进行展示的次数,预设时间段包含当前时刻在内;以及根据至少一个对象的引用次数判断是否将至少一个对象从内存中移除。本公开还提供了一种对象处理系统、计算机系统和计算机可读存储介质。

Object processing method and system

【技术实现步骤摘要】
对象处理方法及系统
本公开涉及互联网
,更具体地,涉及一种对象处理方法及系统、计算机系统和计算机可读存储介质。
技术介绍
随着互联网迅速发展,iOS和Android系统的终端现在已经基本普及,各种终端APP层出不穷,为用户的日常生活提供了许多便利。虽然目前大部分的终端性能高,但是在内存方面,市面上大部分的APP都遇到过因为内存占用过大而出现内存溢出的情况,例如,以具有iOS系统的终端存储图片为例,出现内存溢出情况最多的移动终端是各种大屏设备,由于屏幕尺寸大,服务器下发图片时也会下发大尺寸的图片,但大尺寸的图片像素大,占用的内存空间也多,内存溢出发生概率越大。基于此,在实现本专利技术构思的过程中,专利技术人发现现有技术中至少存在如下问题:终端的内存容易出现内存溢出的问题,导致用户体验不佳。
技术实现思路
有鉴于此,本公开提供了一种对象处理方法及系统。本公开的一个方面提供了一种对象处理方法,包括获取加载到内存中的至少一个对象;确定上述至少一个对象的引用次数,其中,上述引用次数用于表示上述至少一个对象在预设时间段内被页面引用以进行展示的次数,上述预设时间段包含当前时刻在内;以及根据上述至少一个对象的引用次数判断是否将上述至少一个对象从上述内存中移除。根据本公开的实施例,上述页面包括至少一个页面楼层,上述至少一个页面楼层在上述页面中是按照预定展示顺序排布的,上述方法还包括在初始化上述页面或者上述至少一个页面楼层的过程中,为上述至少一个对象添加对应的引用标识,其中,上述引用标识用于定位上述至少一个对象的使用场景,上述使用场景包括引用上述至少一个对象的页面楼层以及该页面楼层所在的页面;以及根据上述引用标识定位上述至少一个对象的使用场景。根据本公开的实施例,确定上述至少一个对象的引用次数包括根据上述至少一个对象被上述当前时刻正在展示的页面引用情况确定上述至少一个对象的第一引用次数;以及根据用户的预期操作路径确定上述至少一个对象的第二引用次数,上述预期定操作路径包括在上述预设时间段内的操作路径。根据本公开的实施例,根据上述至少一个对象的引用次数判断是否将上述至少一个对象从上述内存中移除包括判断上述至少一个对象的引用次数是否为零;以及在上述至少一个对象的引用次数为零的情况下,将与上述至少一个对象从上述内存中移除,以释放上述内存的存储空间。根据本公开的实施例,在根据上述至少一个对象的引用次数判断是否将上述至少一个对象从上述内存中移除之前,上述方法还包括判断引用有上述至少一个对象以进行展示的页面是否已经退出;以及若上述引用有上述至少一个对象以进行展示的页面已经退出,则更新上述至少一个对象的引用次数。根据本公开的实施例,上述页面包括至少一个页面楼层,上述至少一个页面楼层在上述页面中是按照预定展示顺序排布的,在根据上述至少一个对象的引用次数判断是否将上述至少一个对象从上述内存中移除之前,上述方法还包括当上述页面向下滑动时,判断上述至少一个页面楼层是否存在从上述页面的展示窗口中移出或者移出超出预设距离的页面楼层;以及若存在从上述页面的展示窗口中移出或者移出超出上述预设距离的页面楼层,则更新上述上述至少一个对象的引用次数。本公开的另一个方面提供了一种对象处理系统,包括获取模块、确定模块和第一判断模块。获取模块用于获取加载到内存中的至少一个对象;确定模块用于确定上述至少一个对象的引用次数,其中,上述引用次数用于表示上述至少一个对象在预设时间段内被页面引用以进行展示的次数,上述预设时间段包含当前时刻在内;以及第一判断模块用于根据上述至少一个对象的引用次数判断是否将上述至少一个对象从上述内存中移除。根据本公开的实施例,上述页面包括至少一个页面楼层,上述至少一个页面楼层在上述页面中是按照预定展示顺序排布的,上述系统还包括添加模块和定位模块。添加模块用于在初始化上述页面或者上述至少一个页面楼层的过程中,为上述至少一个对象添加对应的引用标识,其中,上述引用标识用于定位上述至少一个对象的使用场景,上述使用场景包括引用上述至少一个对象的页面楼层以及该页面楼层所在的页面;以及定位模块用于根据上述引用标识定位上述至少一个对象的使用场景。根据本公开的实施例,上述确定模块包括第一确定单元和第二确定单元。第一确定单元用于根据上述至少一个对象被上述当前时刻正在展示的页面引用情况确定上述至少一个对象的第一引用次数;以及第二确定单元用于根据用户的预期操作路径确定上述至少一个对象的第二引用次数,上述预期定操作路径包括在上述预设时间段内的操作路径。根据本公开的实施例,上述第一判断模块包括判断单元和移除单元。判断单元用于判断上述至少一个对象的引用次数是否为零;以及移除单元,用于在上述至少一个对象的引用次数为零的情况下,将与上述至少一个对象从上述内存中移除,以释放上述内存的存储空间。根据本公开的实施例,上述系统还包括第二判断模块和第一更新模块。第二判断模块用于在根据上述至少一个对象的引用次数判断是否将上述至少一个对象从上述内存中移除之前,判断引用有上述至少一个对象以进行展示的页面是否已经退出;以及第一更新模块用于若上述引用有上述至少一个对象以进行展示的页面已经退出,则更新上述至少一个对象的引用次数。根据本公开的实施例,上述页面包括至少一个页面楼层,上述至少一个页面楼层在上述页面中是按照预定展示顺序排布的,上述系统还包括第三判断模块和第二更新模块。第三判断模块,用于在根据上述至少一个对象的引用次数判断是否将上述至少一个对象从上述内存中移除之前,当上述页面向下滑动时,判断上述至少一个页面楼层是否存在从上述页面的展示窗口中移出或者移出超出预设距离的页面楼层;以及第二更新模块用于若存在从上述页面的展示窗口中移出或者移出超出上述预设距离的页面楼层,则更新上述上述至少一个对象的引用次数。本公开的另一个方面提供了一种计算机系统,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器实现如上所述的对象处理方法。本公开的另一个方面提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现如上上述的对象处理方法。本公开的另一方面提供了一种计算机程序,上述计算机程序包括计算机可执行指令,上述指令在被执行时用于实现如上所述的对象处理方法。根据本公开的实施例,通过引用计数的方式对对象进行管理,根据对象的引用次数判断是否将至少一个对象从内存中移除,至少部分解决了终端中内存溢出的问题,有利于对象数据缓存和内存的优化,保证内存中缓存的数据是即时数据,释放了内存的存储空间,降低了内存溢出发生概率。附图说明通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:图1示意性示出了根据本公开实施例的可以应用对象处理方法的示例性系统架构;图2示意性示出了根据本公开实施例的对象处理方法的流程图;图3A示意性示出了根据本公开另一实施例的对象处理方法的流程图;图3B示意性示出了根据本公开实施例的图片引用三级结构的创建示意图;图4示意性示出了根据本公开实施例的确定至少一个对象的引用次数的流程图;图5示意性示出了根据本公开实施例的根据至少一个对象的引用次数判断是否将至本文档来自技高网...
对象处理方法及系统

【技术保护点】
一种对象处理方法,包括:获取加载到内存中的至少一个对象;确定所述至少一个对象的引用次数,其中,所述引用次数用于表示所述至少一个对象在预设时间段内被页面引用以进行展示的次数,所述预设时间段包含当前时刻在内;以及根据所述至少一个对象的引用次数判断是否将所述至少一个对象从所述内存中移除。

【技术特征摘要】
1.一种对象处理方法,包括:获取加载到内存中的至少一个对象;确定所述至少一个对象的引用次数,其中,所述引用次数用于表示所述至少一个对象在预设时间段内被页面引用以进行展示的次数,所述预设时间段包含当前时刻在内;以及根据所述至少一个对象的引用次数判断是否将所述至少一个对象从所述内存中移除。2.根据权利要求1所述的方法,其中,所述页面包括至少一个页面楼层,所述至少一个页面楼层在所述页面中是按照预定展示顺序排布的,所述方法还包括:在初始化所述页面或者所述至少一个页面楼层的过程中,为所述至少一个对象添加对应的引用标识,其中,所述引用标识用于定位所述至少一个对象的使用场景,所述使用场景包括引用所述至少一个对象的页面楼层以及该页面楼层所在的页面;以及根据所述引用标识定位所述至少一个对象的使用场景。3.根据权利要求1所述的方法,确定所述至少一个对象的引用次数包括:根据所述至少一个对象被所述当前时刻正在展示的页面引用情况确定所述至少一个对象的第一引用次数;以及根据用户的预期操作路径确定所述至少一个对象的第二引用次数,所述预期定操作路径包括在所述预设时间段内的操作路径。4.根据权利要求1所述的方法,其中,根据所述至少一个对象的引用次数判断是否将所述至少一个对象从所述内存中移除包括:判断所述至少一个对象的引用次数是否为零;以及在所述至少一个对象的引用次数为零的情况下,将与所述至少一个对象从所述内存中移除,以释放所述内存的存储空间。5.根据权利要求1所述的方法,其中,在根据所述至少一个对象的引用次数判断是否将所述至少一个对象从所述内存中移除之前,所述方法还包括:判断引用有所述至少一个对象以进行展示的页面是否已经退出;以及若所述引用有所述至少一个对象以进行展示的页面已经退出,则更新所述至少一个对象的引用次数。6.根据权利要求1所述的方法,其中,所述页面包括至少一个页面楼层,所述至少一个页面楼层在所述页面中是按照预定展示顺序排布的,在根据所述至少一个对象的引用次数判断是否将所述至少一个对象从所述内存中移除之前,所述方法还包括:当所述页面向下滑动时,判断所述至少一个页面楼层是否存在从所述页面的展示窗口中移出或者移出超出预设距离的页面楼层;以及若存在从所述页面的展示窗口中移出或者移出超出所述预设距离的页面楼层,则更新所述所述至少一个对象的引用次数。7.一种对象处理系统,包括:获取模块,用于获取加载到内存中的至少一个对象;确定模块,用于确定所述至少一个对象的引用次数,其中,所述引用次数用于表示所述至少一个对象在预设时间段内被页面引用以进行展示的次数,所述预设时间段包含当前时刻在内;以...

【专利技术属性】
技术研发人员:贾晓滨
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1