[发明专利]一种代理类生成方法及装置有效
申请号: | 201810760135.6 | 申请日: | 2018-07-11 |
公开(公告)号: | CN108984728B | 公开(公告)日: | 2020-11-27 |
发明(设计)人: | 垢帅;陈爱云;姚婷 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F16/22 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 莎日娜 |
地址: | 100080 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代理 生成 方法 装置 | ||
本发明提供了一种代理类生成方法及装置,属于计算机技术领域。其中,终端可以先获取目标协议缓存PB文件,然后确定目标PB文件中每个目标消息的关联消息,接着,获取每个目标消息中每个目标字段的参数,以及每个关联消息中每个关联字段的参数,最后,基于预设的模板代码、每个目标字段的参数以及每个关联字段的参数,生成目标PB文件对应的代理类。本发明实施例中,终端可以自主生成目标PB文件的代理类,进而可以省略用户手动编写代理类的操作,简化了操作过程,降低了实现成本。
技术领域
本发明属于计算机技术领域,特别是涉及一种代理类生成方法及装置。
背景技术
谷歌协议缓存(Google Protocol Bufffer PB)是一种结构化数据存储格式,由于其具有轻便高效的优点,很多应用的数据都会采用PB结构,而为了快速启动应用,通常需要将应用的数据加载至共享内存中。但是,由于在共享内存时,终端会指定一个共享内存区用于加载数据,而PB结构数据的特性会使得终端在加载PB结构数据时,主动去申请一个地址进行存储,即,无法将PB结构数据加载至共享内存区中,导致PB结构数据不支持共享内存,使得好多应用无法进行内存共享,启动速度较慢。
现有技术中,通常是是针对PB结构数据的内容,手工编写支持共享内存的代理类,以使得这些PB结构的数据能够被加载至共享内存中。但是,手工编写的方式操作较为繁琐,实现成本较高。
发明内容
本发明提供一种代理类生成方法及装置,以便解决手工编写代理类,操作较为繁琐,实现成本较高的问题。
依据本发明的第一方面,提供了一种代理类生成方法,应用于终端,该方法可以包括:获取目标协议缓存PB文件;所述目标PB文件中包括至少一个目标消息;
确定每个目标消息的关联消息;
获取每个目标消息中每个目标字段的参数,以及每个关联消息中每个关联字段的参数;
基于预设的模板代码、每个目标字段的参数以及每个关联字段的参数,生成所述目标PB文件对应的代理类;
其中,所述目标字段的参数至少包括目标字段的类型及内容,所述关联字段的参数至少包括所述关联字段的类型及内容,所述预设的模板代码中定义有支持共享内存的字段。
可选的,所述获取每个目标消息中每个目标字段的参数,以及每个关联消息中每个关联字段的参数的步骤,包括:
对于每个目标消息,利用预设语言转换工具,将所述目标消息转换为预设语言格式的消息,得到可读取目标消息;
对于每个关联消息,利用所述预设语言转换工具,将所述关联消息转换为预设语言格式的消息,得到可读取关联消息;
从每个可读取目标消息中读取每个目标字段的参数,从每个可读取关联消息中读取每个关联字段的参数。
可选的,所述确定每个目标消息的关联消息的步骤,包括:
对于每个目标消息,判断所述目标消息中是否定义有消息对象;
若所述目标消息中定义有消息对象,则判断所述消息对象对应的消息是否在所述目标PB文件中;
若所述消息对象对应的消息不在所述目标PB文件中,则将所述消息对象对应的消息,确定为所述目标消息的关联消息。
可选的,所述预设的模板代码包括多个子代码段,所述支持共享内存的字段定义在每个子代码段中;
所述基于预设的模板代码、每个目标字段的参数以及每个关联字段的参数,生成所述目标PB文件对应的代理类的步骤,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810760135.6/2.html,转载请声明来源钻瓜专利网。