内存清除方法、装置、电子设备及存储介质制造方法及图纸

技术编号:33921542 阅读:46 留言:0更新日期:2022-06-25 21:06
本发明专利技术实施例公开了一种内存清除方法、装置、电子设备及存储介质。该方法包括:在将与对象搜索请求对应的响应对象写入内存的过程中,确定所述内存是否达到预设内存溢出条件;若是,则清除所述内存中引用类型为预设引用类型的响应对象。本发明专利技术实施例的技术方案,解决了高并发访问所带来的内存占用量较大的技术问题,实现了降低内存占用量,从而有效的避免内存出现溢出以及浪费的现象。存出现溢出以及浪费的现象。存出现溢出以及浪费的现象。

【技术实现步骤摘要】
内存清除方法、装置、电子设备及存储介质


[0001]本专利技术实施例涉及计算机
,尤其涉及一种内存清除方法、装置、电子设备及存储介质。

技术介绍

[0002]互联网技术的普遍应用,是进入信息社会的标志。在信息社会时常会面临高并发访问量。一旦出现高并发访问量的情况,数据库可能会撑不住,通常会将相同请求所对应的信息压在内存,以缓解数据库的压力。然而,这种处理方式存在内存占用量较大的技术问题。

技术实现思路

[0003]鉴于上述问题,本专利技术实施例提供了一种内存清除方法、装置、电子设备及存储介质,以实现了降低内存占用量,从而有效的避免内存出现溢出以及浪费的现象。
[0004]第一方面,本专利技术实施例提供了一种内存清除方法,该方法包括:
[0005]在将与对象搜索请求对应的响应对象写入内存的过程中,确定所述内存是否达到预设内存溢出条件;
[0006]若是,则清除所述内存中引用类型为预设引用类型的响应对象。
[0007]可选的,所述预设引用类型包括软引用类型;所述清除所述内存中引用类型为预设引用类型的响应对象,包括:
[0008]清除所述内存中引用类型为软引用类型的响应对象。
[0009]可选的,所述内存包括栈内存和堆内存;所述清除所述内存中引用类型为软引用类型的响应对象,包括:
[0010]对所述栈内存中的索引对象进行遍历,确定在所述栈内存中的待处理索引对象;
[0011]基于所述栈内存中的索引对象与所述堆内存中响应对象的对应关系,确定所述堆内存中与所述待处理索引对象对应的引用类型为软引用类型的响应对象,并清除。
[0012]可选的,所述确定所述堆内存中与所述待处理索引对象对应的引用类型为软引用类型的响应对象,并清除,包括:
[0013]确定所述堆内存中与所述待处理索引对象对应的引用类型为软引用类型的响应对象,并标记;
[0014]将已标记的响应对象进行清除。
[0015]可选的,所述清除所述内存中引用类型为软引用类型的响应对象,包括:
[0016]通过启动垃圾回收机制对所述内存中引用类型为软引用类型的响应对象进行清除。
[0017]可选的,所述方法还包括:
[0018]若否,则继续执行所述将与对象搜索请求对应的响应对象写入内存的操作。
[0019]可选的,所述预设内存溢出条件包括预设内存空间占用率或预设内存空间剩余
率。
[0020]第二方面,本专利技术实施例还提供了一种内存清除装置,该装置包括:
[0021]内存溢出确定模块,用于在将与对象搜索请求对应的响应对象写入内存的过程中,确定所述内存是否达到预设内存溢出条件;
[0022]内存清除模块,用于若是,则清除所述内存中引用类型为预设引用类型的响应对象。
[0023]第三方面,本专利技术实施例还提供了一种电子设备,该电子设备包括:
[0024]一个或多个处理器;
[0025]存储装置,用于存储一个或多个程序;
[0026]当所述程序被所述处理器执行,使得所述处理器实现如本专利技术任意实施例所提供的内存清除方法。
[0027]第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本专利技术任意实施例所提供的内存清除方法。
[0028]本专利技术实施例的技术方案,在将与对象搜索请求对应的响应对象写入内存的过程中,可以确定内存是否达到预设内存溢出条件。若是,则可以清除内存中引用类型为预设引用类型的响应对象。本专利技术实施例的技术方案,解决了高并发访问所带来的内存占用量较大的技术问题,实现了降低内存占用量以及避免出现内存溢出以及内存浪费的现象。
附图说明
[0029]为了更加清楚地说明本专利技术示例性实施例的技术方案,下面对描述实施例中所需要用到的附图做一简单介绍。显然,所介绍的附图只是本专利技术所要描述的一部分实施例的附图,而不是全部的附图,对于本领域普通技术人员,在不付出创造性劳动的前提下,还可以根据这些附图得到其他的附图。
[0030]图1是本专利技术实施例一提供的一种内存清除方法的流程示意图;
[0031]图2是本专利技术实施例二提供的一种内存清除方法的流程示意图;
[0032]图3是本专利技术实施例二提供的一种基于内存清除方法的栈内存和堆内存中存储对象的示意图;
[0033]图4是本专利技术实施例三提供的一种内存清除装置的结构示意图;
[0034]图5是本专利技术实施例四提供的一种电子设备的结构示意图。
具体实施方式
[0035]下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。此外,在不冲突的情况下,本专利技术中的实施例及实施例中的特征可以相互组合。
[0036]在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以
对应于方法、函数、规程、子例程、子程序等等。
[0037]实施例一
[0038]图1是本专利技术实施例一提供的一种内存清除方法的流程示意图,本实施例可适用于清除内存,尤其是在高并发访问场景下对内存进行清除的情况,该方法可以由内存清除装置来执行,内存清除装置可通过软件和/或硬件方式实现,可集成于诸如计算机或者服务器等的电子设备中。
[0039]如图1所示,本实施例的方法包括:
[0040]S110、在将与对象搜索请求对应的响应对象写入内存的过程中,确定内存是否达到预设内存溢出条件。
[0041]其中,对象搜索请求可以是用户输入的请求,可以用于进行对象搜索的请求。可选的,对象搜索请求可以携带至少一个搜索关键词。响应对象可以是基于对象搜索请求进行搜索后得到的待写入内存的对象。响应对象可以包括但不限于图像数据、文本数据、音频数据、视频数据等等。需要说明的是,对象搜索请求和响应对象之间的对应关系可以为一对一、一对多。预设内存溢出条件可以是根据实际需要预先设置,在此不做具体限定,例如,预设内存溢出条件可以为预设内存空间占用率、预设内存空间剩余率、预设内存使用量阈值或预设内存剩余量阈值。
[0042]具体的,将与对象搜索请求对应的响应对象写入内存,可以理解为,接收对象搜索请求,可以确定与对象搜索请求对应的各响应对象,进而可以将各响应对象写入内存。其中,在将与对象搜索请求对应的响应对象写入内存的过程中,可以确定内存是否达到预设内存溢出条件。确定内存是否达到预设内存溢出条件可以为确定内存是否达到预设内存空间占用率、预设内存空间剩余率、预设内存使用量阈值或预设内存剩余本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种内存清除方法,其特征在于,包括:在将与对象搜索请求对应的响应对象写入内存的过程中,确定所述内存是否达到预设内存溢出条件;若是,则清除所述内存中引用类型为预设引用类型的响应对象。2.根据权利要求1所述的方法,其特征在于,所述预设引用类型包括软引用类型;所述清除所述内存中引用类型为预设引用类型的响应对象,包括:清除所述内存中引用类型为软引用类型的响应对象。3.根据权利要求2所述的方法,其特征在于,所述内存包括栈内存和堆内存;所述清除所述内存中引用类型为软引用类型的响应对象,包括:对所述栈内存中的索引对象进行遍历,确定在所述栈内存中的待处理索引对象;基于所述栈内存中的索引对象与所述堆内存中响应对象的对应关系,确定所述堆内存中与所述待处理索引对象对应的引用类型为软引用类型的响应对象,并清除。4.根据权利要求3所述的方法,其特征在于,所述确定所述堆内存中与所述待处理索引对象对应的引用类型为软引用类型的响应对象,并清除,包括:确定所述堆内存中与所述待处理索引对象对应的引用类型为软引用类型的响应对象,并标记;将已标记的响应对象进行清除。5.根据权利要求2所述的方法,其特...

【专利技术属性】
技术研发人员:钟丹晔袁海洋
申请(专利权)人:江苏保旺达软件技术有限公司
类型:发明
国别省市:

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

1