System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种方法编译方法、装置及存储介质制造方法及图纸_技高网

一种方法编译方法、装置及存储介质制造方法及图纸

技术编号:43922390 阅读:3 留言:0更新日期:2025-01-03 13:26
本申请提供了一种方法编译方法、装置、系统及存储介质。具体地,如果目标方法的编译有目标线程执行,那么在目标软件处于启动状态时,可以停止执行目标线程。这样,由于目标线程的执行被停止,目标方法的编译也会相应地被停止。而在目标软件启动完成之后,可以开始执行目标线程,以便对目标方法进行编译。这样,在目标软件启动的过程中,由于目标方法的编译被停止,也就不会占用设备的资源。相应地,设备就可以将更多的资源用于启动目标软件,更快地完成目标软件启动过程中的数据处理任务,从而减少目标软件启动时所消耗的时间。

【技术实现步骤摘要】

本申请涉及计算机,尤其涉及一种方法编译方法、装置、系统及存储介质。


技术介绍

1、随着计算机技术的发展,终端设备上往往会安装有各种各样的软件。软件从关闭状态到运行状态可以被称为软件的启动过程。软件在启动过程中的性能表现往往会对用户的体验有较大的影响。例如,如果软件启动耗时较长,就会较为显著地降低用户体验。

2、因此,存在降低软件在启动过程中耗时的需求。


技术实现思路

1、为了解决现有技术的问题,本申请提供了在一种方法编译方法及装置。

2、第一方面,本申请提供了一种方法编译方法,所述方法包括:

3、响应于目标软件处于启动状态,停止执行目标线程,所述目标线程用于编译所述目标软件中的目标方法;

4、响应于所述目标软件启动完成,开始执行所述目标线程,以编译所述目标方法。

5、在一些可能的实现方式中,在停止执行所述目标线程之前,所述方法还包括:

6、根据所述目标方法构建目标对象;

7、将所述目标对象加入编译队列,所述目标线程用于从所述编译队列中取出所述目标对象并进行编译。

8、在一些可能的实现方式中,在停止执行所述目标线程之后,所述方法还包括:

9、将添加方法加载到内存,所述添加方法用于将所述编译队列中的对象的标识写入预设文件;

10、擦除所述内存中加载的所述添加方法。

11、在一些可能的实现方式中,在编译完所述目标方法之后,所述方法还包括:

12、擦除所述内存中加载的删除方法,所述删除方法用于在所述编译队列中的对象被编译之后,将所述对象的标识从所述预设文件删除。

13、在一些可能的实现方式中,所述目标软件运行于第一设备,在开始执行所述目标线程之前,所述方法还包括:

14、响应于所述目标软件启动完成,获取剩余资源量,所述剩余资源量指示所述目标线程能够调用的资源量;

15、确定所述剩余资源量大于预设资源量。

16、在一些可能的实现方式中,所述目标软件运行于第一设备,在开始执行所述目标线程之后,所述方法还包括:

17、获取用户触发的第一操作,停止执行所述目标线程;

18、响应于所述第一操作被处理完毕,继续执行所述目标线程。

19、在一些可能的实现方式中,所述目标软件包括第一方法,所述方法还包括:

20、获取所述第一方法的被调用的次数;

21、响应于所述第一方法被调用的次数大于预设阈值,将所述第一方法确定为所述目标方法。

22、第二方面,本申请提供了一种方法编译装置,所述装置包括:停止单元,用于响应于目标软件处于启动状态,停止执行目标线程,所述目标线程用于编译所述目标软件中的目标方法。启动单元,用于响应于所述目标软件启动完成,开始执行所述目标线程,以编译所述目标方法。

23、在一些可能的实现方式中,所述停止单元,具体与根据所述目标方法构建目标对象。将所述目标对象加入编译队列,所述目标线程用于从所述编译队列中取出所述目标对象并进行编译。

24、在一些可能的实现方式中,所述装置还包括方法擦除单元。所述方法擦除单元,用于将添加方法加载到内存,所述添加方法用于将所述编译队列中的对象的标识写入预设文件。擦除所述内存中加载的所述添加方法。

25、在一些可能的实现方式中,所述方法擦除单元,还用于擦除所述内存中加载的删除方法,所述删除方法用于在所述编译队列中的对象被编译之后,将所述对象的标识从所述预设文件删除。

26、在一些可能的实现方式中,所述目标软件运行于第一设备。所述启动单元,具体用于响应于所述目标软件启动完成,获取剩余资源量,所述剩余资源量指示所述目标线程能够调用的资源量,确定所述剩余资源量大于预设资源量。

27、在一些可能的实现方式中,所述目标软件运行于第一设备。所述停止单元,还用于获取用户触发的第一操作,停止执行所述目标线程。所述启动单元,还用于响应于所述第一操作被处理完毕,继续执行所述目标线程。

28、在一些可能的实现方式中,所述目标软件包括第一方法。所述装置还包括确定单元。所述确定单元,用于获取所述第一方法的被调用的次数;响应于所述第一方法被调用的次数大于预设阈值,将所述第一方法确定为所述目标方法。

29、第三方面,本申请提供一种电子设备,包括:

30、一个或多个处理器;

31、存储装置,其上存储有一个或多个程序,

32、当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现第一方面中任一所述的方法。

33、第四方面,本申请提供一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现第一方面中任一所述的方法。

34、第五方面,本申请提供一种计算机程序产品,所述计算机程序产品在设备上运行时,使得所述设备执行第一方面所述的方法。

35、由此可见,本申请具有如下有益效果:

36、在本申请提供的技术方案中,对于目标软件中需要编译为机器码的目标方法,可以在目标软件启动完成后再进行编译。具体地,如果目标方法的编译有目标线程执行,那么在目标软件处于启动状态时,可以停止执行目标线程。这样,由于目标线程的执行被停止,目标方法的编译也会相应地被停止。而在目标软件启动完成之后,可以开始执行目标线程,以便对目标方法进行编译。这样,在目标软件启动的过程中,由于目标方法的编译被停止,也就不会占用设备的资源。相应地,设备就可以将更多的资源用于启动目标软件,更快地完成目标软件启动过程中的数据处理任务,从而减少目标软件启动时所消耗的时间。另外,在目标软件启动之后,目标线程可以对目标方法进行编译。这样,在需要运行目标方法时,可以执行编译后目标方法,无需重新对目标方法进行编译,也保证了软件运行过程中的响应速度。

本文档来自技高网...

【技术保护点】

1.一种方法编译方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,在停止执行所述目标线程之前,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,在停止执行所述目标线程之后,所述方法还包括:

4.根据权利要求3所述的方法,其特征在于,在编译完所述目标方法之后,所述方法还包括:

5.根据权利要求1所述的方法,其特征在于,所述目标软件运行于第一设备,在开始执行所述目标线程之前,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,所述目标软件运行于第一设备,在开始执行所述目标线程之后,所述方法还包括:

7.根据权利要求1所述的方法,其特征在于,所述目标软件包括第一方法,所述方法还包括:

8.一种方法编译装置,其特征在于,所述装置包括:

9.一种电子设备,其特征在于,包括:

10.一种计算机可读介质,其特征在于,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1-7中任一所述的方法。

【技术特征摘要】

1.一种方法编译方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,在停止执行所述目标线程之前,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,在停止执行所述目标线程之后,所述方法还包括:

4.根据权利要求3所述的方法,其特征在于,在编译完所述目标方法之后,所述方法还包括:

5.根据权利要求1所述的方法,其特征在于,所述目标软件运行于第一设备,在开始执行所述目标线程之前,所述方法还包括:<...

【专利技术属性】
技术研发人员:万钰臻张理
申请(专利权)人:北京字跳网络技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1