【技术实现步骤摘要】
一种内存性能的分析方法、装置、介质和电子设备
本专利技术涉及计算机
,具体而言,涉及一种内存性能的分析方法、装置、介质和电子设备。
技术介绍
现有的应用程序运行往往需要占用大量的内存,这样,很容易引起占用大量内存的问题。在实际应用中,若内存使用不当,并不会导致应用程序的进程立即崩溃,而是具有较长的潜伏周期。引起内存问题的原因很多,例如,受路径深的影响,或者,受依赖交互方式的影响,内存问题往往难以定位。通过LeakCanary库对内存泄露的过程进行监控,以及通过LeakCanary库对内存泄露的原因进行分析。但是,现有的LeakCanary库存在的问题也很多,具体如下所述:现有技术对内存性能分析和处理过程如下所述:步骤a1:应用程序接入LeakCanary库。步骤a2:注册活动及碎片生命周期回调。步骤a3:运行时检测对象是否被回收。步骤a4:卸出内存快照。步骤a5:开启新进程。步骤a6:进行对象引用链的分析。步骤a7:有分析结果,则弹 ...
【技术保护点】
1.一种内存性能的分析方法,其特征在于,包括:/n在电脑端以符合预设插件格式的插件方式启动运行对内存性能进行性能分析的分析过程;/n卸出内存快照,并将所述内存快照拉至所述电脑端;/n在所述电脑端对所述内存快照进行解析,解析所述内存快照中的存储信息,得到对应的解析结果;/n根据所述解析结果中的活动对象和/碎片对象对应的引用链信息进行拼装,得到对应的超文本标记语言文件;其中,所述引用链信息包括与任意一项活动对象对应的第一引用链信息和与任意一项碎片对象对应的第二引用链信息。/n
【技术特征摘要】
1.一种内存性能的分析方法,其特征在于,包括:
在电脑端以符合预设插件格式的插件方式启动运行对内存性能进行性能分析的分析过程;
卸出内存快照,并将所述内存快照拉至所述电脑端;
在所述电脑端对所述内存快照进行解析,解析所述内存快照中的存储信息,得到对应的解析结果;
根据所述解析结果中的活动对象和/碎片对象对应的引用链信息进行拼装,得到对应的超文本标记语言文件;其中,所述引用链信息包括与任意一项活动对象对应的第一引用链信息和与任意一项碎片对象对应的第二引用链信息。
2.根据权利要求1所述的方法,其特征在于,所述解析所述内存快照中的存储信息,得到对应的解析结果包括:
解析所述内存快照中的所述存储信息,得到对应的解析信息;
根据所述解析信息搜索到所述内存快照中的任意一项活动对象和所述内存快照中的任意一项碎片对象;
根据所述解析信息搜索与任意一项活动对象对应的第一引用链信息,以及根据所述解析信息搜索与任意一项碎片对象对应的第二引用链信息;得到搜索结果;
根据所述搜索结果判断任意一项活动对象是否被持有,以及根据所述搜索结果判断任意一项碎片对象是否被持有,得到持有结果;
根据所述持有结果判断任意一项活动对象和/或任意一项碎片对象是否待回收。
3.根据权利要求2所述的方法,其特征在于,所述根据所述搜索结果判断任意一项活动对象是否被持有,以及根据所述搜索结果判断任意一项碎片对象是否被持有,得到持有结果包括:
若根据所述解析信息搜索到与任意一项活动对象对应的所述第一引用链信息,则与所述第一引用链信息对应的任意一项活动对象为被持有对象;以及
若根据所述解析结果搜索到与任意一项碎片对象对应的所述第二引用链信息,则与所述第二引用链信息对应的任意一项碎片对象为被持有对象。
4.根据权利要求3所述的方法,其特征在于,所述根据所述持有结果判断任意一项活动对象和/或任意一项碎片对象是否待回收包括:
若所述持有结果为:与所述第一引用链信息对应的任意一项活动对象为被持有对象,则与所述第一引用链信息对应的任意一项活动对象均为不能被回收的对象;以及
若所述持有结果为:与所述第二引用链信息对应的任意一项碎片对象为被持有对象,则与所述第二引用链信息对应的任意一项碎片对象均为不能被回收的对象。
5.根据权利要求2所述的方法,其特征在于,所述根据所述搜索结果判断任意一项活动对象是否被持有,以及根据所述搜索结果判断任意一项碎片对象是否被持有,得到持有结果还包括:
若根据所述解析信息均未搜索到与任意一项活动对象对应的所述第一引用链信息,则与所述第一引用链信息对应的任意一项活动对象均不是被持有对象;以及
若根据所述解析结...
【专利技术属性】
技术研发人员:刘昭,
申请(专利权)人:北京字节跳动网络技术有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。