预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共16页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN113986402A(43)申请公布日2022.01.28(21)申请号202111265733.4(22)申请日2021.10.28(71)申请人上海米哈游璃月科技有限公司地址200032上海市徐汇区枫林路420号2层A区(72)发明人王达(74)专利代理机构北京品源专利代理有限公司11332代理人赵迎迎(51)Int.Cl.G06F9/448(2018.01)G06F9/445(2018.01)权利要求书2页说明书11页附图2页(54)发明名称函数调用方法、装置、电子设备及存储介质(57)摘要本发明实施例公开了一种函数调用方法、装置、电子设备及存储介质,其中,该方法包括:在目标项目的启动过程中,加载预先构建的函数加载钩子文件;当接收到用于调用目标函数的函数调用指令时,基于所述函数加载钩子文件和预先创建的可调用函数列表确定所述目标函数是否为可调用函数;如果是,则响应于所述函数调用指令,调用所述目标函数。本发明实施例的技术方案,能够避免函数的全量调用导致的内存冗余以及终端卡顿等技术问题,达到节省内存资源,提升项目启动效率,从而提升用户体验的效果。CN113986402ACN113986402A权利要求书1/2页1.一种函数调用方法,其特征在于,包括:在目标项目的启动过程中,加载预先构建的函数加载钩子文件;当接收到用于调用目标函数的函数调用指令时,基于所述函数加载钩子文件和预先创建的可调用函数列表确定所述目标函数是否为可调用函数;如果是,则响应于所述函数调用指令,调用所述目标函数。2.根据权利要求1所述的方法,其特征在于,所述基于所述函数加载钩子文件和预先创建的可调用函数列表确定所述目标函数是否为可调用函数,包括:基于所述函数加载钩子文件获取预先设置的可用接口列表,并判断所述目标函数是否位于可调用函数列表中;如果是,则将所述目标函数确定为可调用函数。3.根据权利要求1所述的方法,其特征在于,还包括:基于所述函数加载钩子文件从预先部署的程序接口服务器中获取预先设置的可调用函数列表,并将所述可调用函数列表存入与启动所述目标项目的客户端对应的本地存储空间中。4.根据权利要求3所述的方法,其特征在于,所述将所述可调用函数列表存入与启动所述目标项目的客户端对应的本地存储空间中,包括:将所述可调用函数列表存入与启动所述目标项目的客户端对应的本地存储空间中的程序调用哈希表中。5.根据权利要求1所述的方法,其特征在于,在所述基于所述函数加载钩子文件和预先创建的可调用函数列表确定所述目标函数是否为可调用函数之前,还包括:基于可调用函数列表的版本号确定所述可调用函数列表是否为最新的可调用函数列表,如果是,则执行基于所述函数加载钩子文件和预先创建的可调用函数列表确定所述目标函数是否为可调用函数的操作。6.根据权利要求1所述的方法,其特征在于,所述调用所述目标函数,包括:为所述目标函数创建函数指令集,并为所述目标函数分配函数内存空间,以于所述函数内存空间中执行所述函数指令集中的指令。7.根据权利要求6所述的方法,其特征在于,在所述调用所述目标函数之前,还包括:确定与所述目标函数所属的目标类,并为所述目标类创建类指令集,并为所述目标类分配类内存空间,以于所述类内存空间中执行所述类指令集中的指令。8.一种函数调用装置,其特征在于,包括:钩子文件加载模块,用于在目标项目的启动过程中,加载预先构建的函数加载钩子文件;函数确定模块,用于当接收到用于调用目标函数的函数调用指令时,基于所述函数加载钩子文件和预先创建的可调用函数列表确定所述目标函数是否为可调用函数;函数调用模块,用于如果是,则响应于所述函数调用指令,调用所述目标函数。9.一种电子设备,其特征在于,所述电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实2CN113986402A权利要求书2/2页现如权利要求1‑7中任一所述的函数调用方法。10.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1‑7中任一所述的函数调用方法。3CN113986402A说明书1/11页函数调用方法、装置、电子设备及存储介质技术领域[0001]本发明实施例涉及计算机应用技术领域,尤其涉及一种函数调用方法、装置、电子设备及存储介质。背景技术[0002]在项目的启动以及运行过程中,会调用各种各样的函数用于实现项目的启动以及运行。目前,在启动项目的过程中,会将项目所涉及的所有函数以及函数所属的类进行调用,为其分配内存。[0003]当需要调用某个类中的某一个函数时,往往需要为包含该函数的类以及该中的所有函数分配内存,换言之,即使该类中包含