[发明专利]检测方法、代码包处理方法、运行控制方法及计算设备在审
申请号: | 202110773402.5 | 申请日: | 2021-07-08 |
公开(公告)号: | CN113608742A | 公开(公告)日: | 2021-11-05 |
发明(设计)人: | 朱凯迪 | 申请(专利权)人: | 阿里巴巴新加坡控股有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/51;G06F9/448 |
代理公司: | 北京太合九思知识产权代理有限公司 11610 | 代理人: | 刘戈;曹威 |
地址: | 新加坡珊顿道*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 检测 方法 代码 处理 运行 控制 计算 设备 | ||
本申请实施例提供一种检测方法、代码包处理方法、运行控制方法及计算设备,其中,运行目标程序,检测目标程序的第一模块请求加载的第二模块的模块标识;根据所述模块标识的寻址结果,确定所述第二模块的第二文件路径;建立所述第一模块的第一文件路径、所述第二文件路径及所述模块标识的对应关系,并保存所述对应关系至所述目标程序的目标文件;其中,所述目标文件用于在所述第一模块请求加载所述第二模块的情况下,基于所述第一文件路径及所述模块标识查找所述目标文件以确定对应的所述第二文件路径。基于该第二文件路径可以获取文件源代码并编译执行,本申请实施例提供的技术方案提高了程序运行速度。
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种检测方法、代码包处理方法、运行控制方法及计算设备。
背景技术
如何优化程序运行速度是本领域技术人员普通需要解决的技术问题之一。
而发明人在实现本发明的过程中发现,依赖运行时系统(Runtime system)开发或运行的程序,如依赖java运行环境开发或运行的java程序,依赖node.js(node.JavaScript,一种JavaScript的运行环境)开发或运行的JavaScript程序等,常会涉及模块之间的互相调用,意即在一个模块中会请求加载另一个模块,以引入和使用另一个模块。
作为程序的基本组成部分,模块用以提供相应功能。模块加载主要包括以下几个操作:首先,基于请求加载的模块的模块标识进行寻址,查找请求加载的模块是否存在,并确定其绝对路径;之后,基于绝对路径查找缓存确定是否已加载该模块,若是,则从缓存中读取保存的文件源代码,否则从绝对路径索引文件位置处读取文件源代码,并将其保存至缓存;之后,编译并执行文件源代码即可以完成模块加载。
由于模块加载需要经过寻址、查找缓存、以及编译并执行等操作,发明人发现这些操作花费时间较长,是影响程序运行速度的原因之一。
发明内容
本申请实施例提供一种检测方法、代码包处理方法、运行控制方法及计算设备,用以解决现有技术中影响程序运行速度的技术问题。
第一方面,本申请实施例中提供了一种检测方法,包括:
根据所述模块标识的寻址结果,确定所述第二模块的第二文件路径;
建立所述第一模块的第一文件路径、所述第二文件路径及所述模块标识的对应关系,并保存所述对应关系至所述目标程序的目标文件;
其中,所述目标文件用于在所述第一模块请求加载所述第二模块的情况下,基于所述第一文件路径及所述模块标识查找所述目标文件以确定对应的所述第二文件路径。
第二方面,本申请实施例中提供了一种代码包处理方法,包括:
获取目标程序的初始代码包;
执行所述代码包以运行所述目标程序,并检测所述目标程序的第一模块请求加载的第二模块的模块标识;
根据所述模块标识的寻址结果,确定所述第二模块的第二文件路径;
建立所述第一模块的第一文件路径、所述第二文件路径及所述模块标识的对应关系,并保存所述对应关系至所述目标程序的目标文件;
根据所述目标文件更新所述代码包。
第三方面,本申请实施例中提供了一种运行控制方法,包括:
在目标程序的第一模块请求加载第二模块的情况下,确定所述第二模块的模块标识以及所述第一模块的第一文件路径;
根据所述模块标识以及所述第一文件路径,从目标文件查找对应的第二文件路径;所述目标文件存储所述第一文件路径、所述模块标识及所述第二文件路径的对应关系;所述第二文件路径预先寻址获得;
根据所述第二文件路径获取文件源代码;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴新加坡控股有限公司,未经阿里巴巴新加坡控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110773402.5/2.html,转载请声明来源钻瓜专利网。