[发明专利]一种快速加载资源的方法及装置在审
申请号: | 201611115565.X | 申请日: | 2016-12-07 |
公开(公告)号: | CN108170489A | 公开(公告)日: | 2018-06-15 |
发明(设计)人: | 张悦 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 王仲凯 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 资源加载 资源数据 加载 存储区域 解析 索引信息 预分配 读取 关系存储 直接读取 资源文件 拷贝 写入 进程 | ||
1.一种快速加载资源的方法,其特征在于,所述方法包括:
获得待加载资源对应的索引信息;
依据所述待加载资源的索引信息,确定第一存储区域中是否包含所述待加载资源对应的资源数据;其中,所述第一存储区域中预先存储有对预定的各资源进行解析所得的各资源数据,以及每一资源数据与相对应资源的索引信息间的对应关系;
若第一存储区域中包含所述待加载资源对应的资源数据,则读取所述待加载资源对应的资源数据,并将读取的所述资源数据写入第二存储区域;所述第二存储区域为资源加载进程预分配的区域。
2.根据权利要求1所述的方法,其特征在于,还包括:
若第一存储区域中不包含所述待加载资源对应的资源数据,则读取并解析所述待加载资源,并将解析后所得的资源数据写入所述第二存储区域。
3.根据权利要求2所述的方法,其特征在于,还包括:
将解析待加载资源所得的资源数据,以及所述资源数据与所述待加载资源的索引信息间的对应关系,写入所述第一存储区域。
4.根据权利要求3所述的方法,其特征在于,还包括:
当所述第一存储区域符合预定的数据淘汰条件时,确定所述第一存储区域中需淘汰的资源数据,并删除所述需淘汰的资源数据。
5.根据权利要求1所述的方法,其特征在于,还包括:
在对所述第一存储区域进行数据访问之前,依据所述数据访问的访问类型,对所述第一存储区域的数据执行相应的加锁操作。
6.根据权利要求5所述的方法,其特征在于,所述依据所述数据访问的访问类型,对所述第一存储区域的数据执行相应的加锁操作包括:
若所述访问类型为读取数据,向所述第一存储区域的数据加共享锁,以使得其他资源加载进程能够读取所述第一存储区域的数据;
若所述访问类型为修改数据,向所述第一存储区域的数据加排他锁,以使得其他资源加载进程不能访问所述第一存储区域的数据。
7.根据权利要求1所述的方法,其特征在于,所述获得待加载资源对应的索引信息,包括:
利用预设算法,生成所述待加载资源对应的索引信息。
8.根据权利要求4所述的方法,其特征在于,所述第一存储区域中的资源数据按链表方式存储,所述每一资源数据及每一资源数据与索引信息间的对应关系存储在相应的链表结点中,则所述依据所述待加载资源的索引信息,确定第一存储区域中是否包含所述待加载资源对应的资源数据,包括:
确定所述第一存储区域的资源链表中是否存在与所述待加载资源的索引信息相匹配的链表结点。
9.根据权利要求8所述的方法,其特征在于,所述读取所述待加载资源对应的资源数据,包括:
读取所述相匹配的链表结点中的资源数据。
10.根据权利要求8所述的方法,其特征在于,还包括:
将所述相匹配的链表结点从在所述资源链表所处的当前位置更新至所述资源链表的第一端。
11.根据权利要求10所述的方法,其特征在于,所述将解析待加载资源后所得的资源数据,以及所述资源数据与所述待加载资源的索引信息间的对应关系,写入所述第一存储区域,包括:
在所述资源链表的第一端添加新的链表结点,并将解析待加载资源所得的资源数据,以及所述资源数据与所述待加载资源的索引信息间的对应关系,写入所述新的链表结点中。
12.根据权利要求11所述的方法,其特征在于,所述确定所述第一存储区域中需淘汰的资源数据,并删除所述需淘汰的资源数据,包括:
按照淘汰最近最少使用的数据的淘汰方式,删除所述资源链表的第二端的链表结点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611115565.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种升级插件的方法及装置
- 下一篇:一种IMA系统数据加载架构及加载方法