[发明专利]动态链接库中的函数的调用方法、装置和处理器在审
申请号: | 202110182587.2 | 申请日: | 2021-02-08 |
公开(公告)号: | CN112835654A | 公开(公告)日: | 2021-05-25 |
发明(设计)人: | 王森森;吴崇龙;朱虹 | 申请(专利权)人: | 珠海格力智能装备有限公司;珠海格力电器股份有限公司 |
主分类号: | G06F9/448 | 分类号: | G06F9/448;G06F9/445 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 霍文娟 |
地址: | 519015 广东省珠海市九洲大道中*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 动态 链接 中的 函数 调用 方法 装置 处理器 | ||
本申请提供了一种动态链接库中的函数的调用方法、装置和处理器。该方法包括:采用第一公共字段封装第一动态链接库中的目标函数,得到封装函数;在第二动态链接库中,定义与第一公共字段的委托类型相同的第二公共字段;获取第一公共字段和第二公共字段,并将第一公共字段以变量的形式赋值给第二公共字段;第二动态链接库通过第二公共字段,调用封装函数。该方法中,可以有效地将回调方法以公共字段赋值的方式传递到其他需要使用回调方法的动态链接库内部,动态链接库可以直接调用其他动态链接库的函数,从而解决了现有技术中动态链接库的方法内部无法调用其他动态链接库的函数的问题,且本申请的方案可以提高动态链接库之间的交互能力。
技术领域
本申请涉及软件开发领域,具体而言,涉及一种动态链接库中的函数的调用方法、装置、计算机可读存储介质、处理器和电子设备。
背景技术
为了提高软件开发的复用性,在项目开展的过程中,都会将不同的功能模块设计为对应的动态链接库,这些动态链接库严格遵循统一的命名规则及设定的接口标准,通过继承接口的形式对其数据和功能进行封装。在软件程序中通过反射的机制获取这些动态链接库基本类型信息,通过类型信息创建该类型的对象,以及调用该对象的公共方法或获取公共字段。
目前,这种反射机制将动态链接库的功能封装到公共方法中,软件程序无需关注其具体实现,但是在当前的反射机制下动态链接库之间的交互也仅限于公共字段之间的传递使用,动态链接库的方法内部无法调用其他动态链接库的函数,以执行对应的方法。
在背景技术部分中公开的以上信息只是用来加强对本文所描述技术的背景技术的理解,因此,背景技术中可能包含某些信息,这些信息对于本领域技术人员来说并未形成在本国已知的现有技术。
发明内容
本申请的主要目的在于提供一种动态链接库中的函数的调用方法、装置、计算机可读存储介质、处理器和电子设备,以解决现有技术中动态链接库的方法内部无法调用其他动态链接库的函数的问题。
根据本发明实施例的一个方面,提供了一种动态链接库中的函数的调用方法,包括:采用第一公共字段封装第一动态链接库中的目标函数,得到封装函数;在第二动态链接库中,定义与所述第一公共字段的委托类型相同的第二公共字段;获取所述第一公共字段和所述第二公共字段,并将所述第一公共字段以变量的形式赋值给所述第二公共字段;所述第二动态链接库通过所述第二公共字段,调用所述封装函数。
可选地,在采用第一公共字段封装第一动态链接库中的函数,得到封装函数之前,所述调用方法还包括:在所述第一动态链接库内定义第一委托类型,所述第一委托类型的签名和所述目标函数的签名相同;根据所述第一委托类型定义对应的所述第一公共字段。
可选地,获取所述第一公共字段和所述第二公共字段,并将所述第一公共字段以变量的形式赋值给所述第二公共字段,包括:获取第一动态数据库中的发布者类的类型,并创建所述发布者类的类型对应的第一实例对象;获取第二动态数据库中的订阅者类的类型,并创建所述订阅者类的类型对应的第二实例对象;采用反射机制获取所述第一实例对象对应的所述第一公共字段以及所述第二实例对象对应的所述第二公共字段。
可选地,在在第二动态链接库中,定义与所述第一公共字段的委托类型相同的第二公共字段之后,在获取所述第一公共字段和所述第二公共字段,并将所述第一公共字段以变量的形式赋值给所述第二公共字段之前,所述方法还包括:软件系统加载所述第一动态数据库和所述第二动态数据库;获取所述第一动态数据库中的所述发布者类;获取所述第二动态数据库中的所述订阅者类。
可选地,所述第二动态链接库通过所述第二公共字段,调用所述封装函数,包括:确定所述第二公共字段是否为空;在所述第二公共字段不为空的情况下,所述第二动态链接库通过所述第二公共字段,调用所述封装函数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海格力智能装备有限公司;珠海格力电器股份有限公司,未经珠海格力智能装备有限公司;珠海格力电器股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110182587.2/2.html,转载请声明来源钻瓜专利网。