【技术实现步骤摘要】
一种代理类生成方法及装置
本专利技术属于计算机
,特别是涉及一种代理类生成方法及装置。
技术介绍
谷歌协议缓存(GoogleProtocolBuffferPB)是一种结构化数据存储格式,由于其具有轻便高效的优点,很多应用的数据都会采用PB结构,而为了快速启动应用,通常需要将应用的数据加载至共享内存中。但是,由于在共享内存时,终端会指定一个共享内存区用于加载数据,而PB结构数据的特性会使得终端在加载PB结构数据时,主动去申请一个地址进行存储,即,无法将PB结构数据加载至共享内存区中,导致PB结构数据不支持共享内存,使得好多应用无法进行内存共享,启动速度较慢。现有技术中,通常是是针对PB结构数据的内容,手工编写支持共享内存的代理类,以使得这些PB结构的数据能够被加载至共享内存中。但是,手工编写的方式操作较为繁琐,实现成本较高。
技术实现思路
本专利技术提供一种代理类生成方法及装置,以便解决手工编写代理类,操作较为繁琐,实现成本较高的问题。依据本专利技术的第一方面,提供了一种代理类生成方法,应用于终端,该方法可以包括:获取目标协议缓存PB文件;所述目标PB文件中包括至 ...
【技术保护点】
1.一种代理类生成方法,其特征在于,应用于终端,所述方法包括:获取目标协议缓存PB文件;所述目标PB文件中包括至少一个目标消息;确定每个目标消息的关联消息;获取每个目标消息中每个目标字段的参数,以及每个关联消息中每个关联字段的参数;基于预设的模板代码、每个目标字段的参数以及每个关联字段的参数,生成所述目标PB文件对应的代理类;其中,所述目标字段的参数至少包括目标字段的类型及内容,所述关联字段的参数至少包括所述关联字段的类型及内容,所述预设的模板代码中定义有支持共享内存的字段。
【技术特征摘要】
1.一种代理类生成方法,其特征在于,应用于终端,所述方法包括:获取目标协议缓存PB文件;所述目标PB文件中包括至少一个目标消息;确定每个目标消息的关联消息;获取每个目标消息中每个目标字段的参数,以及每个关联消息中每个关联字段的参数;基于预设的模板代码、每个目标字段的参数以及每个关联字段的参数,生成所述目标PB文件对应的代理类;其中,所述目标字段的参数至少包括目标字段的类型及内容,所述关联字段的参数至少包括所述关联字段的类型及内容,所述预设的模板代码中定义有支持共享内存的字段。2.根据权利要求1所述的方法,其特征在于,所述获取每个目标消息中每个目标字段的参数,以及每个关联消息中每个关联字段的参数的步骤,包括:对于每个目标消息,利用预设语言转换工具,将所述目标消息转换为预设语言格式的消息,得到可读取目标消息;对于每个关联消息,利用所述预设语言转换工具,将所述关联消息转换为预设语言格式的消息,得到可读取关联消息;从每个可读取目标消息中读取每个目标字段的参数,以及从每个可读取关联消息中读取每个关联字段的参数。3.根据权利要求1所述的方法,其特征在于,所述确定每个目标消息的关联消息的步骤,包括:对于每个目标消息,判断所述目标消息中是否定义有消息对象;若所述目标消息中定义有消息对象,则判断所述消息对象对应的消息是否在所述目标PB文件中;若所述消息对象对应的消息不在所述目标PB文件中,则将所述消息对象对应的消息,确定为所述目标消息的关联消息。4.根据权利要求1所述的方法,其特征在于,所述预设的模板代码包括多个子代码段,所述支持共享内存的字段定义在每个子代码段中;所述基于预设的模板代码、每个目标字段的参数以及每个关联字段的参数,生成所述目标PB文件对应的代理类的步骤,包括:对于每个目标字段,将所述目标字段的参数拷贝至所述目标字段的类型对应的子代码段,以及,对于每个关联字段,将所述关联字段的参数拷贝至所述关联字段的类型对应的子代码段,得到所述目标PB文件对应的代理类。5.根据权利要求4所述的方法,其特征在于,所述对于每个目标字段,将所述目标字段的参数拷贝至所述目标字段的类型对应的子代码段的步骤,包括:在所述目标字段设置有预设标识时,将所述目标字段对应的指针拷贝至所述目标字段的类型对应的子代码段。6.根据权利要求5所述的方法,其特征在于,在所述基于预设的模板代码、每个目标字段的参数以及每个关联字段的参数,生成所述目标PB文件对应的代理类的步骤之后,所述方法还包括:接收用户发送的数据获取请求;所述数据获取请求中包括待获取字段;若所述目标PB文件对应的代理类中存储有所述待获取字段的参数,则通过所述代理类向用户返回存储的所述待获取字段的参数;若所述目标PB文件对应的代理类中存储有所述待获取字段对应的指针,则通过所述代理类从所述目标PB文件中获取所述待获取字段的参数,并返回给用户。7.根据权利要求1所述的方法,其特征在于,所述终端中预先设置有代理类存储路径;在所述基于预设的模板代码、每个目标字段的参数以及每个关联字段的参数,生成所述目标PB文件对应的代理类的步骤之后,所...
【专利技术属性】
技术研发人员:垢帅,陈爱云,姚婷,
申请(专利权)人:北京奇艺世纪科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。