[发明专利]类的自动加载方法、装置、电子设备及存储介质在审
申请号: | 201910995605.1 | 申请日: | 2019-10-18 |
公开(公告)号: | CN111078308A | 公开(公告)日: | 2020-04-28 |
发明(设计)人: | 李星 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F9/448 |
代理公司: | 北京华夏泰和知识产权代理有限公司 11662 | 代理人: | 韩月玲 |
地址: | 100080 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 自动 加载 方法 装置 电子设备 存储 介质 | ||
本申请涉及一种类的自动加载方法、装置、电子设备及存储介质,方法包括:在客户端程序启动后的空闲时刻,获取所述客户端程序的类的信息;根据所述客户端程序的类的信息,从所述客户端程序的类中选择目标类,调用所述目标类自动加载的接口,执行所述目标类的自动加载流程;其中,所述目标类继承了所述自动加载的接口,并实现了所述自动加载的接口的自动加载流程;其中,所述目标类继承了所述自动加载的接口,并实现了所述自动加载的接口中声明的方法。本申请能够解决客户端程序启动时自动调用所有类的load函数,影响客户端程序的启动速度的问题。
技术领域
本申请涉及计算机技术领域,尤其涉及一种类的自动加载方法、装置、电子设备及存储介质。
背景技术
目前,有些针对移动终端开发的移动操作系统(例如iOS),在启动客户端程序时注册组件提供的服务,在类未创建时自动调用所有类的load函数。在客户端程序启动时注册组件提供的服务,具有自动、全局并且类未创建时调用等特性,项目中常被用于实现分布式、轻量级自动注册。
但是,由于客户端程序启动过程中大量调用load函数,或者,调用的load函数中存在耗时操作,会大大影响客户端程序的启动速度。
发明内容
本申请提供了一种类的自动加载方法、装置、电子设备及存储介质,用以解决客户端程序启动时注册组件提供的服务,自动调用所有类的load函数,影响客户端程序的启动速度的问题。
第一方面,本申请提供了一种类的自动加载方法,包括:在客户端程序启动后的空闲时刻,获取所述客户端程序的类的信息;根据所述客户端程序的类的信息,从所述客户端程序的类中选择目标类,调用所述目标类中自动加载的接口,执行所述目标类的自动加载流程;其中,所述目标类继承了所述自动加载的接口,并实现了所述自动加载的接口的自动加载流程;其中,所述目标类继承了所述自动加载的接口,并实现了所述自动加载的接口中声明的方法。
可选地,获取所述客户端程序的类的信息,包括:通过应用程序编程接口获取所述客户端程序的类的信息,所述客户端程序的类的信息包括:类的名称、第一指示信息和第二指示信息三者之间的对应关系,所述第一指示信息用于指示所述类是否继承了所述自动加载的接口,所述第二指示信息用于指示所述类是否实现了所述自动加载的接口中声明的方法。
可选地,通过应用程序编程接口获取所述客户端程序的类的信息,包括:通过应用程序编程接口读取符号表,获取所述符号表中保存的所述客户端程序的类的信息;其中,所述符号表中包括所述客户端程序中所有自定义类的信息,所述符号表用于保存类的结构体的数据集合,所述类的结构体中包含所述类的信息。
可选地,从所述客户端程序的类中选择目标类,包括:遍历所述客户端程序的类的信息,从所述客户端程序的类中选择所述第一指示信息和所述第二指示信息符合预设条件的类,将选择出的类作为所述目标类;其中,所述预设条件为:所述第一指示信息指示继承了所述自动加载的接口,且所述第二指示信息指示实现了所述自动加载的接口中声明的方法。
第二方面,本申请提供了一种类的自动加载装置,包括:获取模块,用于在客户端程序启动后的空闲时刻,获取所述客户端程序的类的信息;调用模块,用于根据所述客户端程序的类的信息,从所述客户端程序的类中选择目标类,调用所述目标类自动加载的接口,执行所述目标类的自动加载流程;其中,所述目标类中继承了所述自动加载的接口,并实现了所述自动加载的接口中声明的方法。
可选地,所述获取模块具体用于:通过应用程序编程接口获取所述客户端程序的类的信息,所述客户端程序的类的信息包括:类的名称、第一指示信息和第二指示信息三者之间的对应关系,所述第一指示信息用于指示所述类是否继承了所述自动加载的接口,所述第二指示信息用于指示所述类是否实现了所述自动加载的接口中声明的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910995605.1/2.html,转载请声明来源钻瓜专利网。