[发明专利]卡顿分析方法、装置、电子设备及计算机可读存储介质在审
申请号: | 202010963250.0 | 申请日: | 2020-09-14 |
公开(公告)号: | CN114185753A | 公开(公告)日: | 2022-03-15 |
发明(设计)人: | 张韩 | 申请(专利权)人: | 北京字跳网络技术有限公司 |
主分类号: | G06F11/34 | 分类号: | G06F11/34 |
代理公司: | 北京市立方律师事务所 11330 | 代理人: | 张筱宁 |
地址: | 100190 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分析 方法 装置 电子设备 计算机 可读 存储 介质 | ||
1.一种卡顿分析方法,其特征在于,包括:
发送目标消息至消息队列,记录所述目标消息的发送时刻、开始处理时刻与处理完成时刻;
若所述目标消息发生卡顿现象,确定所述目标消息发生卡顿现象的时段,其中,所述目标消息发生卡顿的时段包括消息等待时段或消息处理时段,所述消息等待时段为所述发送时刻与所述开始处理时刻之间的时段,所述消息处理时段为所述开始处理时刻与所述处理完成时刻之间的时段;
基于所述目标消息发生卡顿现象的时段,确定所述目标消息的卡顿分析结果。
2.根据权利要求1所述的方法,其特征在于,所述发送目标消息至消息队列,记录所述目标消息的发送时刻、开始处理时刻与处理完成时刻,包括:
利用预设的消息处理工具发送所述目标消息至消息队列;
利用所述消息处理工具的第一预设函数记录所述目标消息的发送时刻;
当接收到所述目标消息的处理请求时,记录所述目标消息的开始处理时刻;
利用所述消息处理工具的第二预设函数记录所述目标消息的处理完成时刻。
3.根据权利要求2所述的方法,其特征在于,所述消息处理工具按照下述方式构建:
创建包括所述第一预设函数及所述第二预设函数的消息处理类;
利用创建的消息处理类,确定所述消息处理工具中的消息处理父类;
通过类继承方式复写所述第一预设函数及所述第二预设函数,得到所述消息处理工具中的消息处理子类。
4.根据权利要求3所述的方法,其特征在于,所述利用创建的消息处理类,确定所述消息处理工具中的消息处理父类,包括:
确定第一消息处理父类,所述第一消息处理父类为原始消息处理工具的源代码中直接使用消息处理的代码点的消息处理父类;
利用创建的消息处理类替换所述第一消息处理父类,得到所述消息处理工具中的消息处理父类;
或者,
确定第二消息处理父类,所述第二消息处理父类为原始消息处理工具的源代码中的消息处理使用子类对应的消息处理父类;
利用创建的消息处理类替换所述第二消息处理父类,得到所述消息处理工具中的消息处理父类。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述若所述目标消息发生卡顿现象,确定所述目标消息发生卡顿现象的时段,包括:
获取所述目标消息在所述消息等待时段和所述消息处理时段内的函数调用关系,基于所述函数调用关系确定所述目标消息发生卡顿的时段。
6.根据权利要求5所述的方法,其特征在于,所述基于所述函数调用关系确定所述目标消息发生卡顿的时段,包括:
若所述发送时刻与开始处理时刻的时间差大于第一预设时间阈值,则确定所述目标消息在所述消息等待时段发生卡顿现象;
若开始处理时刻与处理完成时刻的时间差大于第二预设时间阈值,则确定所述目标消息在所述消息处理时段发生卡顿现象。
7.根据权利要求6所述的方法,其特征在于,所述基于所述目标消息发生卡顿现象的时段,确定所述目标消息的卡顿分析结果,包括:
若所述目标消息在所述消息等待时段发生卡顿现象,基于所述第一预设函数确定所述目标消息的消息来源;
分析所述消息来源,确定造成所述卡顿现象的耗时消息名称。
8.根据权利要求6所述的方法,其特征在于,所述基于所述目标消息发生卡顿现象的时段,确定所述目标消息的卡顿分析结果,包括:
若所述目标消息在所述消息处理时段发生卡顿现象,基于所述函数调用关系,确定造成所述卡顿现象的耗时函数名称。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
显示所述卡顿分析结果,所述卡顿分析结果包括所述造成卡顿现象的耗时消息名称或所述造成卡顿现象的耗时函数名称。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字跳网络技术有限公司,未经北京字跳网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010963250.0/1.html,转载请声明来源钻瓜专利网。