[发明专利]一种应用程序异常处理方法及装置在审
| 申请号: | 201810209141.2 | 申请日: | 2018-03-14 |
| 公开(公告)号: | CN110275791A | 公开(公告)日: | 2019-09-24 |
| 发明(设计)人: | 杨绍军 | 申请(专利权)人: | 普天信息技术有限公司 |
| 主分类号: | G06F11/07 | 分类号: | G06F11/07;G06F11/36 |
| 代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹;李相雨 |
| 地址: | 100080 北京*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 异常处理 应用程序 函数调用栈 地址信息 调用函数 全局变量 预设 解码 输出异常 异常信号 运行异常 获知 输出 记录 | ||
1.一种应用程序异常处理方法,其特征在于,包括:
进入待处理应用程序的被调用函数,同时在第一预设全局变量中记录所述被调用函数对应的第一函数调用栈地址信息;
若判断获知所述被调用函数发生运行异常则输出异常信号,并根据所述异常信号进行异常处理;
从所述第一预设全局变量中提取所述第一函数调用栈地址信息,并对所述第一函数调用栈地址信息解码后进行输出。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若判断获知所述被调用函数未发生运行异常,则在所述被调用函数运行结束之后记录所述被调用函数对应的第二函数调用栈地址信息并退出所述被调用函数。
3.根据权利要求1所述的方法,其特征在于,所述若判断获知所述被调用函数发生运行异常则输出异常信号,包括:
若判断获知所述应用程序的运行过程中发生缓冲区溢出、空指针访问异常和除零异常中的任意一种或其组合,则判定所述被调用函数发生第一类异常,输出所述第一类异常对应的第一异常信号。
4.根据权利要求2所述的方法,其特征在于,所述若判断获知所述被调用函数发生运行异常则输出异常信号,包括:
获取第二预设全局变量中储存的监控对象对应的当前值;
若判断获知所述当前值与所述监控对象对应的预设标准值不一致,则判定所述被调用函数发生第二类异常,输出所述第二类异常对应的第二异常信号。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在进入所述被调用函数之后,对所述第二预设全局变量设置互斥锁标签。
6.根据权利要求1所述的方法,其特征在于,所述若判断获知所述被调用函数发生运行异常则输出异常信号,包括:
在所述被调用函数的运行过程中,实时获取CPU占有率;
若判断获知所述CPU占有率不小于预设阈值,则判定所述被调用函数发生第三类异常,输出所述第三类异常对应的第三异常信号。
7.根据权利要求1-6任意一项所述的方法,其特征在于,所述根据所述异常信号进行异常处理,包括:
根据所述异常信号以及预先储存的异常处理程序列表,确定所述异常信号对应的目标异常处理程序,并调用所述目标异常处理程序进行异常处理;所述异常处理程序列表包括异常信号与异常处理程序之间的对应关系。
8.一种应用程序异常处理装置,其特征在于,包括记录单元、处理单元和输出单元,其中:
记录单元,用于进入待处理应用程序的被调用函数,同时在第一预设全局变量中记录所述被调用函数对应的第一函数调用栈地址信息;
处理单元,用于若判断获知所述被调用函数发生运行异常则输出异常信号,并根据所述异常信号进行异常处理;
输出单元,用于从所述第一预设全局变量中提取所述第一函数调用栈地址信息,并对所述第一函数调用栈地址信息解码后进行输出。
9.一种电子设备,其特征在于,包括处理器、存储器和总线,其中:
所述处理器,所述存储器通过总线完成相互间的通信;
所述处理器可以调用存储器中的计算机程序,以执行如权利要求1-7任意一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7任意一项所述方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于普天信息技术有限公司,未经普天信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810209141.2/1.html,转载请声明来源钻瓜专利网。





