[发明专利]卡顿分析方法、装置、存储介质和计算设备有效
申请号: | 201911203057.0 | 申请日: | 2019-11-29 |
公开(公告)号: | CN110990243B | 公开(公告)日: | 2023-08-11 |
发明(设计)人: | 黄旭 | 申请(专利权)人: | 天津网之易创新科技有限公司 |
主分类号: | G06F11/34 | 分类号: | G06F11/34 |
代理公司: | 北京市铸成律师事务所 11313 | 代理人: | 邓海鸿;包莉莉 |
地址: | 300301 天津市滨海新区滨海*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分析 方法 装置 存储 介质 计算 设备 | ||
本发明的实施方式提供了一种卡顿分析方法、装置、存储介质和计算设备,所述的卡顿分析方法包括:在应用程序的运行过程中,记录在特定线程的特定模式下,多个运行循环的运行数据;基于记录的多个运行循环的运行数据,得到所述应用程序的卡顿情况。利用本发明的实施例能够实现对终端应用程序的卡顿分析。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
通常,在终端设备运行应用程序(Application,可简写为APP)时,终端将为该APP开启一条主线程,主线程也可称为用户界面UI线程,可处理UI事件例如刷新显示UI等。运行循环(Runloop)通常指事件处理循环,用于实现事件的接收与分发,Runloop是线程的基本组成,可使线程在有待处理事件时工作,无工作时休眠,从而节省资源。
在实际应用中,APP运行过程中时常会发生卡顿,有些由外部原因导致,例如网络问题,有些由内部原因导致,例如APP运行环境问题等等。如何准确快速地对卡顿情况进行分析,便于排除卡顿的诱因,提高系统整体性能,是目前研究的重点和热点之一。
发明内容
本发明期望提供一种卡顿分析方法、装置、存储介质和计算设备,以至少解决上述技术问题。
第一方面,本发明实施例提供一种卡顿分析方法,所述方法包括:
在应用程序的运行过程中,记录在特定线程的特定模式下,多个运行循环的运行数据;
基于记录的多个运行循环的运行数据,得到所述应用程序的卡顿情况。
根据本发明实施例的卡顿分析方法,所述运行数据包括运行循环的事件处理周期时长。
根据本发明实施例的卡顿分析方法,所述基于记录的多个运行循环的运行数据,得到所述应用程序的卡顿情况,包括:在存在至少一个运行循环的事件处理周期时长大于或等于预设阈值的情况下,确定所述应用程序出现卡顿。
根据本发明实施例的卡顿分析方法,所述方法还包括:基于所述事件处理周期时长大于或等于预设阈值的至少一个运行循环的事件处理周期时长和所述多个运行循环的事件处理周期时长,确定所述应用程序的卡顿指标值。
根据本发明实施例的卡顿分析方法,所述卡顿指标值包括所述事件处理周期时长大于或等于预设阈值的至少一个运行循环的事件处理周期时长之和与所述多个运行循环的事件处理周期时长之和的比值;或者,所述卡顿指标值包括所述事件处理周期时长大于或等于预设阈值的至少一个运行循环中发生界面重绘的运行循环的事件处理周期时长之和与所述多个运行循环中发生界面重绘的运行循环的事件处理周期时长之和的比值。
根据本发明实施例的卡顿分析方法,所述方法还包括:基于所述事件处理周期时长大于或等于预设阈值的至少一个运行循环的数量和所述多个运行循环的数量,确定所述应用程序的卡顿指标值。
根据本发明实施例的卡顿分析方法,所述卡顿指标值包括所述事件处理周期时长大于或等于预设阈值的至少一个运行循环的数量与所述多个运行循环的数量的比值;或者,所述卡顿指标值包括所述事件处理周期时长大于或等于预设阈值的至少一个运行循环中发生界面重绘的运行循环的数量与所述多个运行循环中发生界面重绘的运行循环的数量的比值。
根据本发明实施例的卡顿分析方法,所述运行数据还包括运行循环对应的方法单元信息,所述方法单元信息包括运行循环中调用的方法单元的信息;在确定所述应用程序出现卡顿之后,所述方法还包括:基于所述事件处理周期时长大于或等于预设阈值的至少一个运行循环对应的方法单元信息,对卡顿进行定位。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津网之易创新科技有限公司,未经天津网之易创新科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911203057.0/2.html,转载请声明来源钻瓜专利网。