内存分配方法、装置、电子设备、存储介质及产品制造方法及图纸

技术编号:35460283 阅读:30 留言:0更新日期:2022-11-03 12:26
本公开实施例公开了一种内存分配方法、装置、电子设备、存储介质及产品,其中,方法包括:获取内存分配请求,并根据所述内存分配请求的内存空间大小确定内存分配策略确定路径;当所述内存分配策略确定路径为预设内存分配优化路径时,获取与发出所述内存分配请求的功能模块的应用场景对应的目标内存分配策略;根据所述目标内存分配策略,完成内存分配。本公开实施例的技术方案,解决了针对应用程序内存分配策略单一,影响内存分配性能和应用程序运行性能的问题,可以根据应用程序的应用场景适应性的进行内存分配,使内存分配策略更加灵活,能够满足应用程序不同场景下的内存需求。够满足应用程序不同场景下的内存需求。够满足应用程序不同场景下的内存需求。

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


[0001]本公开实施例涉及计算机
,尤其涉及一种内存分配方法、装置、电子设备、存储介质及产品。

技术介绍

[0002]在内存管理领域,堆是用来表示分配动态内存的虚拟地址空间,多采用堆内存分配器来对可用的堆空间进行管理和调度。通常,不同的内存分配器对应不同的分配策略,目标都是为了提高内存分配的速度、效率和适应性。内存分配器为了普适性以及分配速度,会按照分配的内存块大小情况,固化分配区间,以及对应的分配策略。但是,上述相对固化的内存分配策略并不适配于应用程序的应用场景变化导致内存需求变化的场景,会使内存分配的性能降低,并影响应用程序的运行性能。

技术实现思路

[0003]本公开提供了一种内存分配方法、装置、电子设备、存储介质及产品,可以根据应用程序的应用场景适应性的进行内存分配,使内存分配策略更加灵活,能够满足应用程序不同场景下的内存需求。
[0004]第一方面,本公开实施例提供了一种内存分配方法,该方法包括:
[0005]获取内存分配请求,并根据所述内存分配请求的内存空间大小确定内存分配策略确定路径;
[0006]当所述内存分配策略确定路径为预设内存分配优化路径时,获取与发出所述内存分配请求的功能模块的应用场景对应的目标内存分配策略;
[0007]根据所述目标内存分配策略,完成内存分配。
[0008]第二方面,本公开实施例还提供了一种内存分配装置,该装置包括:
[0009]分配策略确定方式确定模块,用于获取内存分配请求,并根据所述内存分配请求的内存空间大小确定内存分配策略确定路径;
[0010]目标内存分配策略确定模块,用于当所述内存分配策略确定路径为预设内存分配优化路径时,获取与发出所述内存分配请求的功能模块的应用场景对应的目标内存分配策略;
[0011]内存分配模块,用于根据所述目标内存分配策略,完成内存分配。
[0012]第三方面,本公开实施例还提供了一种电子设备,所述电子设备包括:
[0013]一个或多个处理器;
[0014]存储装置,用于存储一个或多个程序,
[0015]当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本公开实施例任一所述的内存分配方法。
[0016]第四方面,本公开实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如本公开实施例任一所述的内存分
配方法。
[0017]第五方面,本公开实施例还提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如本专利技术实施例中任一所述的内存分配方法。
[0018]本公开实施例,通过获取内存分配请求,并根据内存分配请求的内存空间大小确定内存分配策略确定路径,即首先判断需要响应的内存分配请求对应请求的内存空间是否为需要分配优化的内存空间;当内存分配策略确定路径为预设内存分配优化路径时,获取与发出内存分配请求的功能模块的应用场景对应的目标内存分配策略;根据与应用场景适配的目标内存分配策略,完成内存分配。本公开实施例的技术方案解决了针对应用程序内存分配策略单一,影响内存分配性能和应用程序运行性能的问题,可以根据应用程序的应用场景适应性的进行内存分配,使内存分配策略更加灵活,能够满足应用程序不同场景下的内存需求,从而提升应用程序在对应场景下的运行性能。
附图说明
[0019]结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
[0020]图1是本公开实施例所提供的一种内存分配方法流程示意图;
[0021]图2是本公开实施例所提供的一种内存分配的多层级结构示意图;
[0022]图3是本公开实施例所提供的又一种内存分配方法流程示意图;
[0023]图4是本公开实施例所提供的又一种内存分配方法流程示意图;
[0024]图5是本公开实施例所提供的一种内存分配装置的结构示意图;
[0025]图6是本公开实施例所提供的一种电子设备的结构示意图。
具体实施方式
[0026]下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
[0027]应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
[0028]本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
[0029]需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
[0030]需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
[0031]可以理解的是,在使用本公开各实施例公开的技术方案之前,均应当依据相关法律法规通过恰当的方式对本公开所涉及个人信息的类型、使用范围、使用场景等告知用户并获得用户的授权。
[0032]例如,在响应于接收到用户的主动请求时,向用户发送提示信息,以明确地提示用户,其请求执行的操作将需要获取和使用到用户的个人信息。从而,使得用户可以根据提示信息来自主地选择是否向执行本公开技术方案的操作的电子设备、应用程序、服务器或存储介质等软件或硬件提供个人信息。
[0033]作为一种可选的但非限定性的实现方式,响应于接收到用户的主动请求,向用户发送提示信息的方式例如可以是弹窗的方式,弹窗中可以以文字的方式呈现提示信息。此外,弹窗中还可以承载供用户选择“同意”或者“不同意”向电子设备提供个人信息的选择控件。
[0034]可以理解的是,上述通知和获取用户授权过程仅是示意性的,不对本公开的实现方式构成限定,其它满足相关法律法规的方式也可应用于本公开的实现方式中。
[0035]可以理解的是,本技术方案所涉及的数据(包括但不限于数据本身、数据的获取或使用)应当遵循相应法律法规及相关规定的要求。
[0036]图1为本公开实施例所提供的一种内存分配方法的流程示意图,本公开实施例适用于响本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种内存分配方法,其特征在于,包括:获取内存分配请求,并根据所述内存分配请求的内存空间大小确定内存分配策略确定路径;当所述内存分配策略确定路径为预设内存分配优化路径时,获取与发出所述内存分配请求的功能模块的应用场景对应的目标内存分配策略;根据所述目标内存分配策略,完成内存分配。2.根据权利要求1所述的方法,其特征在于,所述根据所述内存分配请求的内存空间大小确定内存分配策略确定路径,包括:确定所述内存空间大小,是否在需要进行分配优化的内存空间大小的预设内存区间范围内;当所述内存空间大小在所述预设内存区间范围内时,确定所述内存分配策略确定路径为所述预设内存分配优化路径。3.根据权利要求1所述的方法,其特征在于,在获取内存分配请求之后,所述方法还包括:统计预设时间段内的内存分配请求数据以及内存分配状态数据。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:根据所述内存分配请求数据、所述内存分配状态数据和所述功能模块在所述应用场景下的运行状态数据中至少一种数据,更新所述目标内存分配策略。5.根据权利要求4所述的方法,其特征在于,所述根据所述内存分配请求数据、所述内存分配状态数据和所述功能模块在所述应用场景下的运行状态数据中至少一种数据,更新所述目标内存分配策略,包括:根据所述内存请求数据中的内存请求频率、所述内存分配状态数据中的内存峰值占用数据、分配时延和所述运行状态数据中的运行性能指标数值中的至少一种数据,确定是否需要进行策略调整;当需要进行策略调整时,按照预设调整策略,调整所述目标内存分配策略中的分配内存块大小、分配内存块数量、内...

【专利技术属性】
技术研发人员:李铮李小成李孟杰马超满达
申请(专利权)人:北京字跳网络技术有限公司
类型:发明
国别省市:

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

1