The technical scheme of the present invention includes a dynamic cache adjustment method and system for realizing that when a resource is loaded in a game, the resource pool and the weight of the resource are updated, and the resource of the buffer pool is sorted dynamically and cleaned up periodically to ensure that the resource in the buffer pool is up-to-date and most necessary, so as to achieve the goal of perfectly balancing the loading speed and the use of system resources. The invention has the advantages of dynamically adjusting the memory occupancy of the buffer pool, maximizing the most efficient cache game resources currently needed, greatly improving the resource hit rate of the buffer pool, fully meeting the loading requirements of the fierce battle scenarios, and avoiding frequent loading and unloading leading to game carton.
【技术实现步骤摘要】
一种动态缓存调整方法及系统
本专利技术涉及一种动态缓存调整方法及系统,属于计算机
技术介绍
目前市场上一般手游为了加载速度,都会在内存中设置各种缓存池,用以将各种资源预先加载到缓存池,当需要调用时直接从缓存池载入,大大的提高加载速度减少游戏卡顿。缓存池的种类有角色的缓存池,动作的缓存池,Gameobject的缓存池等等。通过设置缓存池的上限可以保证缓存池的容量不会持续增大,进而被系统停止进程。但静态的缓存池在缓存池满了之后可能会存在真正最需要的资源没有进池,无用的资源却持续被清除的问题。
技术实现思路
为解决上述问题,本专利技术的目的在于提供一种动态缓存调整方法及系统,在游戏每次加载一个资源时,通过更新资源池、资源的权重,并对缓存池的资源动态排序,定期清理,保证缓存池中的资源都是最新最必须的,以此达到完美兼顾加载速度和系统资源使用的目的。本专利技术解决其问题所采用的技术方案一方面是:一种动态缓存调整方法,其特征在于,该方法包括:S100、创建缓存池,并设置缓存池内存上限值、清理周期以及总清理时长;S200、运行游戏程序,对游戏的资源的进行加载;S300、缓存池对资源进行缓存以及按照清理周期和清理时长对资源进行循环清理;S400、缓存池根据游戏发送的资源缓存请求执行资源的加载和/或卸载,统计各个资源的资源信息,其中资源信息包括资源的加载时间以及资源的冷却时间,并根据资源信息计算资源在缓存池中的权重值;S500、根据缓存池中缓存的资源信息设置最小缓存权重值,并在资源池满载的情况下判断入池的资源的权重值是否大于最小缓存权重值,若是将最小缓存权重值对应的资源 ...
【技术保护点】
1.一种动态缓存调整方法,其特征在于,该方法包括:S100、创建缓存池,并设置缓存池内存上限值、清理周期以及总清理时长;S200、运行游戏程序,对游戏的资源的进行加载;S300、缓存池对资源进行缓存以及按照清理周期和清理时长对资源进行循环清理;S400、缓存池根据游戏发送的资源缓存请求执行资源的加载和/或卸载,统计各个资源的资源信息,其中资源信息包括资源的加载时间以及资源的冷却时间,并根据资源信息计算资源在缓存池中的权重值;S500、根据缓存池中缓存的资源信息设置最小缓存权重值,并在资源池满载的情况下判断入池的资源的权重值是否大于最小缓存权重值,若是将最小缓存权重值对应的资源移出缓存池并将入池的资源按照权重入池,否则将入池的资源移出资源池,并结束资源使用。
【技术特征摘要】
1.一种动态缓存调整方法,其特征在于,该方法包括:S100、创建缓存池,并设置缓存池内存上限值、清理周期以及总清理时长;S200、运行游戏程序,对游戏的资源的进行加载;S300、缓存池对资源进行缓存以及按照清理周期和清理时长对资源进行循环清理;S400、缓存池根据游戏发送的资源缓存请求执行资源的加载和/或卸载,统计各个资源的资源信息,其中资源信息包括资源的加载时间以及资源的冷却时间,并根据资源信息计算资源在缓存池中的权重值;S500、根据缓存池中缓存的资源信息设置最小缓存权重值,并在资源池满载的情况下判断入池的资源的权重值是否大于最小缓存权重值,若是将最小缓存权重值对应的资源移出缓存池并将入池的资源按照权重入池,否则将入池的资源移出资源池,并结束资源使用。2.根据权利要求1所述的动态缓存调整方法,其特征在于,所述S300包括:S301、读取上次缓存池对缓存资源执行清理的时刻,并根据当前时刻与缓存池对缓存资源执行清理的时刻的差,得到清理冷却时间;S302、判断清理冷却时间是否大于清理周期,若是则执行步骤S304,否则执行步骤S303;S303、休眠一定时间后,更新清理冷却时间并返回执行S302,其中一定时间可自定义;S304、按照资源权重值的大小排列倒序清理缓存池的资源;S305、记录清理缓存池资源所耗费的时间,记为清理时长,判断清理时长是否大于总清理时长,若是则结束清理操作,否则返回执行步骤S304。3.根据权利要求2所述的动态缓存调整方法,其特征在于,所述S301还包括:若未读取到上次缓存池对缓存资源执行清理的时刻,则直接设置清理冷却时间为0。4.根据权利要求1所述的动态缓存调整方法,其特征在于,所述S400包括:S410、根据游戏请求内容加载对应的资源;S420、判断该资源是否在缓存池中,若是则执行步骤S430,否则执行步骤S440;S430、从缓存池加载该资源并记录该资源的使用时刻;S440、从磁盘加载该资源并记录该资源的使用时刻和加载时间;S450、资源加载完毕,根据资源的使用时刻和加载时间计算各个资源的权重值。5.根据权利要求4所述的动态缓存调整方法,其特征在于,所述S450包括:S451、记录当前时刻,与资源的使用时间做差的绝对值得到冷却时间;S452、根据资源的冷却时间和加载时间计算各个资源的权重值,计算式为W=T×A+L×B其中W为权重值,其中T为冷却时间,其中L为加载时间,其中A、B为权重系数,可自定义;S453、按照步骤S452的方法计算各个资源的权重值,并在每次缓存池加载资源时更新资源的权...
【专利技术属性】
技术研发人员:潘亚楠,胡逸飞,赖炳新,
申请(专利权)人:珠海金山网络游戏科技有限公司,珠海西山居移动游戏科技有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。