[发明专利]一种应用处理方法、终端、服务器、设备及存储介质在审
| 申请号: | 202111283907.X | 申请日: | 2021-11-01 |
| 公开(公告)号: | CN113986599A | 公开(公告)日: | 2022-01-28 |
| 发明(设计)人: | 吴凯凯 | 申请(专利权)人: | 北京字节跳动网络技术有限公司 |
| 主分类号: | G06F11/07 | 分类号: | G06F11/07 |
| 代理公司: | 北京中知法苑知识产权代理有限公司 11226 | 代理人: | 李明 |
| 地址: | 100041 北京市石景山区*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 应用 处理 方法 终端 服务器 设备 存储 介质 | ||
本公开提供了一种应用处理方法、终端、服务器、设备及存储介质,终端可以在应用异常时获取目标线程以及目标线程的线程状态信息、脏内存以及脏内存的内存状态信息,以及除所述脏内存之外的其他内存中被使用的部分内存的内存地址信息,并发送至服务器,服务器接收终端发送的信息,并结合所应用的运行日志和至少一种应用信息,生成所述应用的信息转储文件,进而通过信息转储文件对所述应用进行调试。这样,通过在线收集崩溃信息,进而将信息整合以模拟甚至还原应用崩溃时刻的应用信息,可以使应用调试更加具有针对性,大大降低应用调试的难度和复杂度,有利于减少调试时间,加快调试进度,降低调试工作量,节省大量人力物力。
技术领域
本公开涉及计算机技术领域,具体而言,涉及一种应用处理方法、终端、服务器、设备及存储介质。
背景技术
随着科技的发展和互联网技术的不断进步,智能设备的功能也越来越强大,人们一般可以在智能设备里安装多种类型应用来满足日常生活的需求,给人们的日常生活、学习和工作带来了极大的便利。
在使用过程中,由于应用自身存在的问题,例如底层代码的问题,或者与终端的适配性、版本等问题,会导致应用在使用的过程中,可能会出现界面错乱、应用卡顿、闪退甚至应用易崩溃等问题,因此需要对应用进行调试。然而对于应用的调试,大多需要通过人工对应用进行反复的测试,以在测试中尽量模拟出相似问题,从而分析出应用存在的问题,但是这样不仅流程复杂,调试周期长,调试进度缓慢,而且需要耗费大量的人力物力,调试效果不佳。
发明内容
本公开实施例至少提供一种应用处理方法、终端、服务器、设备及存储介质。
本公开实施例提供了一种应用处理方法,所述方法包括:
在应用处于异常运行状态的情况下,获取所述应用在发生运行异常时刻的多个线程和所述应用的堆内存;
确定所述多个线程中需要上报的至少一个目标线程以及所述目标线程的线程状态信息;
确定所述堆内存中存在的脏内存以及所述脏内存的内存状态信息;
确定所述堆内存中除所述脏内存之外的其他内存中被使用的部分内存的内存地址信息;
将所述线程状态信息、所述内存状态信息和所述内存地址信息发送至服务器,以供所述服务器通过所述线程状态信息和所述内存状态信息对所述应用进行调试。
一种可选的实施方式中,所述在应用处于异常运行状态的情况下,获取所述应用在发生运行异常时刻的多个线程和所述应用的堆内存,包括:
在应用满足异常数据上报条件的情况下,在检测到所述应用发生运行异常时,挂起所述应用中运行的多个线程;
获取挂起的所述多个线程,以及所述应用的堆内存。
一种可选的实施方式中,所述确定所述多个线程中需要上报的至少一个目标线程以及所述目标线程的线程状态信息,包括:
基于预先配置的线程上报信息,和/或所述应用在发生运行异常时刻的业务场景,从所述多个线程中确定出需要上报的至少一个目标线程;
获取所述目标线程的线程状态信息。
一种可选的实施方式中,所述获取所述目标线程的线程状态信息,包括:
获取所述目标线程的线程结构和栈内存;
从所述线程结构中确定出位于预设的多个线程寄存器中的线程值;
确定所述栈内存中处于被使用中的已分配内存;
将确定出的多个线程值和所述已分配内存作为所述目标线程的线程状态信息。
一种可选的实施方式中,在确定所述线程状态信息和所述内存状态信息之后,所述方法包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字节跳动网络技术有限公司,未经北京字节跳动网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111283907.X/2.html,转载请声明来源钻瓜专利网。





