资源管理方法、装置和计算机设备与流程
- 国知局
- 2024-07-11 16:15:19
本技术涉及计算机,特别是涉及一种资源管理方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术:
1、随着游戏软件的不断更新版本,游戏内容越来越多,游戏资源数据量也在不断增加,已经远远超过了游戏软件初次安装运行时占用的内存大小,甚至超过了游戏运行设备的内存大小,因此需要将游戏运行过程中的不需要资源从内存中卸载。相关技术中,在游戏运行过程中,在发现不需要的资源时,会在当前帧所在的时段对所有不需要的资源同时执行卸载操作,致使当前帧同时卸载的资源数量较多时,会占用很长时间,导致游戏画面卡顿。
技术实现思路
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、所述资源分类子模块,还用于加载所述记录文件,从所述记录文件中获取资源的标识信息与资源类别的关联关系。
48、第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如本公开实施例任一项所述的资源管理方法。
49、第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如本公开实施例任一项所述的资源管理方法。
50、第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如本公开实施例任一项所述的资源管理方法。
51、上述资源管理方法、装置、计算机设备、存储介质和计算机程序产品,利用资源的标识信息与资源类别的关联关系,将获取的需要卸载的资源进行分类,在所述资源为不需要调用其他资源的类型的情况下,将所述资源添加到卸载队列,将卸载队列中的资源按照队列顺序进行卸载。将资源进行分批依次卸载,减少了应用程序单次卸载资源的数量,避免了由于单次卸载资源过多而导致的应用程序的延迟,减少了应用程序卡顿的发生,提高了应用程序的稳定性和响应速度。
本文地址:https://www.jishuxx.com/zhuanli/20240615/78367.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表