System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及计算机,尤其涉及一种目标应用的运行进度恢复方法、装置及存储介质。
技术介绍
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、在一示例性的实施方式中,所述响应于基于所述目标应用的重启指令,在所述备份内存块中获取所述目标应用上一次中止运行时的目标备份数据,包括:
37、响应于基于所述目标应用的重启指令,确定所述目标应用上一次中止运行时的备份功能模块标识;
38、基于所述备份功能模块标识,在所述备份内存块中查找与所述备份功能模块标识相匹配的第二功能模块;
39、从所述匹配的第二功能模块中获取所述目标应用上一次中止运行时的目标备份数据。
40、在一示例性的实施方式中,所述将所述目标备份数据拷贝至所述主内存块中,并运行所述目标应用,包括:
41、将所述目标备份数据拷贝至所述主内存块中,在所述主内存块中对所述目标备份数据进行解压,得到解压数据;
42、基于所述解压数据运行所述目标应用。
43、根据本公开实施例的第二方面,提供一种目标应用的运行进度恢复装置,包括:
44、内存块构建模块,被配置为执行针对目标应用构建主内存块以及备份内存块;其中,所述主内存块与所述备份内存块的内存容量相同;所述主内存块的数据读写频率大于所述备份内存块的数据读写频率;所述备份内存块用于备份所述主内存块中存储的数据;
45、数据存储模块,被配置为执行在所述目标应用的运行过程中,在所述主内存块中存储当前业务数据;
46、数据备份模块,被配置为执行在所述备份内存块中备份所述当前业务数据;所述备份内存块相对于所述主内存块的数据延时时间小于预设时间阈值;
47、备份数据获取模块,被配置为执行响应于基于所述目标应用的重启指令本文档来自技高网...
【技术保护点】
1.一种目标应用的运行进度恢复方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述在所述目标应用的运行过程中,在所述主内存块中存储当前业务数据之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述在所述备份内存块中备份所述当前业务数据之前,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,所述从所述备份内存块中筛选与所述第一目标功能模块相匹配的第二功能模块,得到第二目标功能模块之前,所述方法还包括:
5.根据权利要求3所述的方法,其特征在于,所述在所述备份内存块中备份所述当前业务数据之后,所述方法还包括:
6.根据权利要求2所述的方法,其特征在于,所述基于所述目标应用对应的多个业务类型,在所述主内存块中构建第一功能模块,包括:
7.根据权利要求1所述的方法,其特征在于,所述响应于基于所述目标应用的重启指令,在所述备份内存块中获取所述目标应用上一次中止运行时的目标备份数据,包括:
8.根据权利要求1所述的方法,其特征在于,所述将所述目标备份数据拷贝至所述
9.一种目标应用的运行进度恢复装置,其特征在于,包括:
10.一种电子设备,其特征在于,包括:
11.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备处理器执行时,使得所述电子设备能够执行如权利要求1-8中任一项所述的目标应用的运行进度恢复方法。
...【技术特征摘要】
1.一种目标应用的运行进度恢复方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述在所述目标应用的运行过程中,在所述主内存块中存储当前业务数据之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述在所述备份内存块中备份所述当前业务数据之前,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,所述从所述备份内存块中筛选与所述第一目标功能模块相匹配的第二功能模块,得到第二目标功能模块之前,所述方法还包括:
5.根据权利要求3所述的方法,其特征在于,所述在所述备份内存块中备份所述当前业务数据之后,所述方法还包括:
6.根据权利要求2所述的方法,其特征在于,所述基于所述目...
【专利技术属性】
技术研发人员:方正涛,陈继伟,
申请(专利权)人:杭州弹指宇宙科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。