在应用程序异常时,如内存非法访问,越界导致程序崩溃时。Core文件将记录设备当前的堆栈信息,寄存器等值。当设备出现卡死问题时,使用主动kill掉卡死线程,使设备应用程序挂掉,生成coredump文件,这样就可以分析堆栈,查看设备具体卡主到哪里,那把锁未释放,该方法对于解决死锁问题极为方便。
1 问题描述
在系统测试过程中出现设备IE控件无法正常登陆的情况,通过ps命令发现davinci进程存在,没有出现异常崩溃的现象.通过taskShow命令发现有线程累加同时有D状态线程出现,排查如下:
第一步:通过taskShow命令查看线程的运行状态,看是否有D状态

第二步:记录出现卡住线程的id信息,以后分析堆栈时使用
第三步:选一个线程,此处选择图1中线程id为25298的ipc_sdk110011线程。然后手动让程序生成coredump文件。


当设备应用程序出现卡死情况,通过主动kill卡死线程生成coredump文件来分析。本文介绍了如何查看线程状态,记录卡住线程信息,以及如何利用调试命令分析堆栈,揭示因全局锁导致的死锁问题,为解决此类问题提供了步骤和方法。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



