一种对象复用方法、装置、客户端及存储介质制造方法及图纸

技术编号:37117345 阅读:13 留言:0更新日期:2023-04-01 05:12
本申请涉及数据处理技术的领域,尤其是涉及一种对象复用方法、装置、客户端及存储介质,该方法包括获取待进行通讯的消息对象;查找链表复用池中是否存在待进行通讯的消息对象,链表复用池中存储有至少一个之前进行通讯所利用的消息对象;若存在,则从链表复用池中调取待进行通讯的消息对象;发送调取出的待进行通讯的消息对象。本申请具有降低计算机的压力以及提高消息处理效率。及提高消息处理效率。及提高消息处理效率。

【技术实现步骤摘要】
一种对象复用方法、装置、客户端及存储介质


[0001]本申请涉及数据处理技术的领域,尤其是涉及一种对象复用方法、装置、客户端及存储介质。

技术介绍

[0002]随着手机和电脑的普及,用户与互联网的联系越来越密切,任何时间任何场景均可与互联网进行联系,因此导致各种信息通讯的业务也越来越多,例如互联网游戏成为了一种大众娱乐方式,用户对游戏界面进行功能操作实际为用户在前端触发相应功能后,确定与所触发到的功能对应的待发送信息,待发送信息由前端发送至UE端,再由UE端发送至服务器端,以便于服务器端将与待发送信息相对应的功能进行展示,但是由于用户在前端触发的功能可能存在较多的重复性,因此需要多次创建重复信息,并进行发送,进而需要较大的内存空间对重复信息进行存储。
[0003]相关技术中,一般将需要反复创建的重复信息创建后,进行及时释放,以减少内存空间的占用,但是在频繁的创建和释放重复信息时可能会降低软件的运算速度,极易导致计算机的计算压力增大,进而导致消息处理效率降低。

技术实现思路

[0004]为了降低计算机的压力以及提高消息处理效率,本申请提供一种对象复用方法、装置、客户端及存储介质。
[0005]第一方面,本申请实施例提供一种对象复用方法,采用如下的技术方案:一种对象复用方法,包括:获取待进行通讯的消息对象;查找链表复用池中是否存在所述待进行通讯的消息对象,所述链表复用池中存储有至少一个之前进行通讯所利用的消息对象;若存在,则从所述链表复用池中调取所述待进行通讯的消息对象;发送调取出的待进行通讯的消息对象。
[0006]通过采用上述技术方案,由于链表复用池中存储有至少一个之前进行通讯所利用的消息对象,根据待进行通讯的消息对象,从链表复用池中进行遍历,若链表复用池中存在待进行通讯的消息对象,则直接从链表复用池中进行调取,并发送调取出的消息对象,而不是在每次检测到用户触发的通讯指令后,重新创建一个新的消息对象,并在通讯完成后进行销毁,也即可以降低对消息对象进行重复创建和释放的次数,从而可以提高软件的运算速度,降低计算机的计算压力,进而可以提高消息处理效率。
[0007]在一种可能实现的方式中,所述查找链表复用池中是否存在所述待进行通讯的消息对象,之后还包括:若不存在所述待进行通讯的消息对象,则新建所述待进行通讯的消息对象;发送新建的消息对象。
[0008]通过采用上述技术方案,当链表复用池内不存在待进行通讯的消息对象时,才创建待进行通讯的对象,而不是在检测到用户的通讯指令后直接创建新的待通讯的消息对象,并发送新建的消息对象,也即当链表复用池中不存在待进行通讯的消息对象后,才新建消息对象,也即在降低计算机的计算压力的同时,也可以进行正常的消息通讯。
[0009]在一种可能实现的方式中,所述方法还包括:将所述新建的消息对象添加至所述链表复用池;或者,对所述新建的消息对象进行计数,以得到预设时长内所述新建的消息对象被复用的次数,当计数结果达到预设次数时,将所述新建的消息对象添加至所述链表复用池。
[0010]通过采用上述技术方案,一方面将新建的消息对象直接存储至链表复用池内,而不是进行直接销毁,便于下一次进行通讯并利用相同的消息对象时,可以直接从链表复用池中进行调取,而不是重新创建,从而可以进一步地降低计算机的计算压力,进而可以进一步地提高消息处理效率;另一方面,在将新建的消息对象写入链表复用池之前,增加筛选条件,对预设时长内该新建的消息对象被复用的次数进行统计,当预设时长内新建的消息对象被复用次数超过预设次数时,才将新的消息对象存放至链表复用池内,也即,将复用次数较多的消息对象添加至链表复用池中,降低将复用次数较少的消息对象添加至链表复用池中,可以在降低计算机的计算压力的同时,可以降低内存的存储压力。
[0011]在一种可能实现的方式中,将所述新建的消息对象添加至所述链表复用池,包括:确定所述新建的消息对象对应的重要等级,以及所述链表复用池中包含的每个消息对象对应的重要等级,消息对象对应的重要等级与消息对象被复用的概率呈正比例关系;根据所述新建的消息对象对应的重要等级以及所述链表复用池中包含的每个消息对象对应的重要等级,确定待插入的位置;基于所述待插入的位置,将所述新建的消息对象添加至所述链表复用池。
[0012]通过采用上述技术方案,在将新建的消息对象添加至链表复用池时,根据新建的消息对象与链表复用池中每个消息对象的重要等级的关系,将新建的消息对象添加至链表复用池中,由于消息对象对应的重要等级与消息对象被复用的概率成正比关系,也就是说,在链表复用池中按照消息对象被复用的概率插入新建的消息对象,从而可以查找到待进行通讯的消息对象的效率。
[0013]在一种可能实现的方式中,确定任一消息对象对应的重要等级,包括:确定任一消息对象在预设时间周期内被创建的次数,和/或,相邻两次被创建所间隔的时间;根据所述任一消息对象在预设时间周期内被创建的次数,和/或,所述相邻两次被创建所间隔的时间,确定任一消息对象对应的重要等级。
[0014]通过采用上述技术方案,在确定消息对象对应的重要等级时,根据该消息对象在预设时间周期内被创建的次数和/或相邻两次被创建所间隔的时间确定,由于消息对象的重要等级与该消息对象被复用的概率呈正比例关系,消息对象在预设周期内被创建的次数和/或相邻两次被创建所间隔的时间能够表征出消息对象被复用的概率,从而可以提高确定消息对象的重要等级的准确度,进而可以进一步地提高查找到待进行通讯的消息对象的效率。
[0015]在一种可能实现的方式中,所述将所述新建的消息对象添加至所述链表复用池,之后还包括:确定所述新建的消息对象对应的pool头节点和/或next节点。
[0016]通过采用上述技术方案,通过确定新建的消息对象的pool头节点和/或next节点,从而可以实现将新建的消息对象添加至链表复用池。
[0017]在一种可能实现的方式中,所述方法还包括以下任一项:当所述链表复用池长度大于预设长度时,清空所述链表复用池中预设个数的消息对象;当所述链表复用池长度大于预设长度时,清空所述链表复用池;当所述链表复用池长度大于预设长度时,销毁所述链表复用池。
[0018]通过采用上述技术方案,一方面,当链表复用池长度大于预设长度时,通过清空预设个数的消息对象,便于为新的消息对象提供存储空间的同时,降低其他消息对象被重新调取时,需要被重新创建的次数;另一方面,当链表复用池长度大于预设长度时,将链表复用池清空,只保留头节点对象,便于为新创建的消息对象提供更多的存储空间,同时以便于在链表复用池中插入新建的消息对象;另一方面,当链表复用池长度大于预设长度时,销毁链表复用池内的节点对象,可以降低内存的占用。
[0019]第二方面,本申请提供一种对象复用装置,采用如下的技术方案:一种对象复用装置,包括:确定消息对象模块,用于获取待进行通讯的消息对象;查找消息对象模块,用于查找链表复用池中是否存在所述待进行通讯的消息对象,所述链表复用池中存储有至少本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种对象复用方法,其特征在于,包括:获取待进行通讯的消息对象;查找链表复用池中是否存在所述待进行通讯的消息对象,所述链表复用池中存储有至少一个之前进行通讯所利用的消息对象;若存在,则从所述链表复用池中调取所述待进行通讯的消息对象;发送调取出的待进行通讯的消息对象。2.根据权利要求1所述的一种对象复用方法,其特征在于,所述查找链表复用池中是否存在所述待进行通讯的消息对象,之后还包括:若不存在所述待进行通讯的消息对象,则新建所述待进行通讯的消息对象;发送新建的消息对象。3.根据权利要求2所述的一种对象复用方法,其特征在于,还包括:将所述新建的消息对象添加至所述链表复用池;或者,对所述新建的消息对象进行计数,以得到预设时长内所述新建的消息对象被复用的次数,当计数结果达到预设次数时,将所述新建的消息对象添加至所述链表复用池。4.根据权利要求3所述的一种对象复用方法,其特征在于,将所述新建的消息对象添加至所述链表复用池,包括:确定所述新建的消息对象对应的重要等级,以及所述链表复用池中包含的每个消息对象对应的重要等级,消息对象对应的重要等级与消息对象被复用的概率呈正比例关系;根据所述新建的消息对象对应的重要等级以及所述链表复用池中包含的每个消息对象对应的重要等级,确定待插入的位置;基于所述待插入的位置,将所述新建的消息对象添加至所述链表复用池。5.根据权利要求4所述的一种对象复用方法,其特征在于,确定任一消息对象对应的重要等级,包括:确定任一消息对象在预设时间周期内被创建的次数,和/或,相邻两次被创建所间隔的时间;根据所述任一消息对象在预设...

【专利技术属性】
技术研发人员:彭振昆郑航费元华郭建君
申请(专利权)人:北京蔚领时代科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1