【技术实现步骤摘要】
一种多语言运行库按需调用方法和系统
[0001]本专利技术涉及软件开发
,特别涉及一种多语言运行库按需调用方法和系统
。
技术介绍
[0002]运行库调用技术是指在软件开发中使用运行库(也称为库或库文件)来访问和执行库中提供的功能和服务
。
[0003]按需调用库(
lazy loading
)是一种优化技术,它在程序运行时延迟加载和链接共享库,直到真正需要使用库中的函数或符号时才进行加载
。
运行库是一组预编译的可重用代码模块,包含了常用的功能实现,如输入输出功能
、
网络通信功能
、
数据库连接功能等
。
对于大型应用程序,其可能包含多个共享库文件,而不是所有函数都会在每次执行中被用到,只有在需要时才加载所需的库文件;对于应用程序支持插件或动态加载模块,按需调用库可确保只在需要时加载插件所需的库,这样可以实现灵活的扩展性,同时减少了对特定插件的依赖;对于可能需要相对较长的初始化时间的库,按需调用库可以将初始化步骤推迟到实际使用时,避免不必要的初始化开销,提高程序的响应性能
。
总之,按需调用库适用于那些具有复杂性
、
大型性或需要灵活加载库的应用场景
。
它可以提高程序的启动速度
、
减少内存占用,并在需要时确保所需的函数和符号可用,以优化应用程序的性能和资源利用
。
[0004]此外,在进行软件开发时,会有一些常用的功能和代码需要编写,重复编 ...
【技术保护点】
【技术特征摘要】
1.
一种多语言运行库按需调用方法,其特征在于,包括:当
Linux
操作系统中指定应用在运行阶段运行
、
且根据需要进行待加载库的加载处理时,根据预设库加载路径策略,控制
Linux
操作系统中指定应用在运行阶段加载到所需要使用的库;所述库加载路径策略包括不同优先级的路径控制点以及各路径控制点所指向的搜索路径,其中,应用沙箱提前放置有路径控制点以及
C/C++
按需调用时所需的不同版本的应用程序,且控制点信息可编辑更新
、
应用程序可上传更新;通过使用以下特定参数中至少两者,在编译阶段和链接阶段限定共享库的搜索路径:路径参数
、
命令参数
、
编译参数
、
链接参数
、
系统参数;在
java
库多版本按需调用时,利用应用沙箱的运行环境,使得应用程序可在不同发行版本的操作系统所对应的机器上运行;在
Java
系统中创建代理类来加载和代理原始类的代理加载机制,基于所述代理加载机制在不修改原始类的情况下对原始类进行扩展
、
增强或拦截,通过定制化的加载策略及沙箱定制类加载器,在应用框架里面
Java
应用程序根据需要进行待加载类的加载处理;根据所确定的加载路径,获取待加载类或待加载库的文件
。2.
根据权利要求1所述的多语言运行库按需调用方法,其特征在于,包括:在进行加载处理之前,先判断预设库加载路径策略中是否包含与待加载库或待加载类的定制加载顺序
。3.
根据权利要求2所述的多语言运行库按需调用方法,其特征在于,包括:如果包含与待加载库或待加载类的定制加载顺序,则按照指定加载路径来加载待加载类或待加载库;如果未包含与待加载库或待加载类的定制加载顺序,则按照默认加载路径查找待加载类或待加载库所对应的文件
。4.
根据权利要求3所述的多语言运行库按需调用方法,其特征在于,进一步包括:在第一按需调用方式里,应用安装
、
运行过程中,通过指定路径的方式,使应用在加载时优先从自身封装的库中加载相关文件,再是从应用框架和依赖库中加载相关文件;在第二按需调用方式中,按照应用的需要,能够不受次序限制地加载应用实现层的类
、
应用框架层的类以及基础类
。5.
根据权利要求1所述的多语言运行库按需调用方法,其特征在于,进一步包括:配设不同优先级的多个路径控制点,其中,所述多个路径控制点的控制点信息提前放置在应用沙箱中且控制点信息可编辑更新,具体包括配设用于编译阶段的第一优先级路径控制点
、
用于运行阶段的第二优先级路径控制点
、
用于配置文件的第三优先级控制点
、
用于默认查找路径的第四优先级控制点;所述路径控制点用于控制要执行的指定应用程序
、
应用程序自带系统库或基础库搜索路径,指定应用程序
、
应用程序自带系统库
/
基础...
【专利技术属性】
技术研发人员:唐稳,焦港欣,王弈宸,王强,王峰,赵廉,王福喜,
申请(专利权)人:中国电子科技集团公司第十五研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。