异常检测处理方法及装置、电子设备及计算机存储介质制造方法及图纸

技术编号:19009073 阅读:22 留言:0更新日期:2018-09-22 08:57
本发明专利技术实施例公开了一种异常检测处理方法及装置、电子设备及计算机存储介质。所述异常检测处理方法包括:创建第一线程组;在所述第一线程组内创建异常处理方法;利用所述第一线程组替代应用程序的第二线程组进行异常处理。

Anomaly detection processing method and device, electronic equipment and computer storage medium

The embodiment of the invention discloses an anomaly detection processing method and device, an electronic device and a computer storage medium. The exception detection processing method includes: creating a first thread group; creating an exception handling method within the first thread group; and using the first thread group to replace the second thread group of the application program for exception handling.

【技术实现步骤摘要】
异常检测处理方法及装置、电子设备及计算机存储介质
本专利技术涉及信息
,尤其涉及一种异常检测处理方法及装置、电子设备及计算机存储介质。
技术介绍
应用程序,在运行时可能会因为某些异常原因导致程序崩溃,为了便于开发者获取程序崩溃原因,会对应用程序的异常进行捕获,例如,安卓应用(Application,APP)中,主要是通过设置线程的自定义异常捕获处理类,从而通过自定义异常捕获处理类中捕获崩溃异常,在捕获异常之后,才可能对异常进行修复,使得APP能够整体上运行良好,确保用户的使用满意度。但是实践发现,在一些情况下,APP的异常捕获存在遗漏问题或异常捕获中途中断问题。
技术实现思路
有鉴于此,本专利技术实施例期望提供一种异常检测处理方法及装置、电子设备及计算机存储介质,至少部分解决APP异常捕获等异常处理遗漏的问题。本专利技术的技术方案是这样实现的:第一方面,本专利技术实施例提供一种异常检测处理方法,包括:创建第一线程组;在所述第一线程组内创建异常处理方法;利用所述第一线程组替代应用程序的第二线程组进行异常处理。可选地,所述在所述第一线程组内创建异常处理方法,包括:在所述第一线程组内创建第二异常处理方法;将所述应用程序的第一异常处理方法的方法名设置为所述第二异常处理方法的方法名。可选地,所述第二异常处理方法的异常处理逻辑,至少部分不同于所述第一异常处理方法的异常处理逻辑。可选地,所述第二异常方法包括:继承的所述第一异常处理方法;创建的第三异常处理方法;其中,所述第三异常处理方法的异常处理逻辑不同于所述第一异常处理方法的异常处理逻辑。可选地,所述在所述第一线程组内创建异常处理方法,包括:利用覆写机制在所述第一线程组内创建所述异常处理方法。可选地,所述方法还包括以下至少之一:根据所述第二线程组的属性设置所述第一线程组的属性;根据所述第二线程组的引用设置所述第一线程组的引用。可选地,所述根据所述第二线程组的属性设置所述第一线程组的属性,包括以下至少之一:根据所述第二线程组的线程组名称设置所述第一线程组的线程组名称;根据所述第二线程组包括的线程信息设置所述第一线程组包括的线程组信息;根据所述第二线程组的类型设置所述第一线程组的类型,其中,所述类型包括:前台线程组类型和/或后台线程组类型。可选地,所述根据所述第二线程组的属性设置所述第一线程组的属性,包括:利用反射机制根据所述第二线程组的属性设置所述第一线程组的属性。可选地,所述利用所述第一线程组替代应用程序的第二线程组进行异常处理,包括:所述第一线程组从操作系统接收异常捕获事件;所述第一线程组的异常捕获方法基于异常捕获事件执行异常捕获。第二方面,本专利技术实施例提供一种异常检测处理装置,包括:第一创建模块,用于创建第一线程组;第二创建模块,用于在所述第一线程组内创建异常处理方法;替代处理模块,用于利用所述第一线程组替代应用程序的第二线程组进行异常处理。第三方面,本专利技术实施例提供一种电子设备,包括:存储器,用于信息存储;处理器,与所述存储器连接,用于通过执行存储在所述存储器上的计算机可执行指令,实现前述一个或多个技术方案提供的方法。第四方面,本专利技术实施例提供一种计算机存储介质,所述计算机存储介质存储有计算机可执行指令;所述计算机可执行指令被执行后,能够前述一个或多个技术方案提供的方法。本专利技术实施例提供的异常检测处理方法及装置、电子设备及计算机存储介质,会创建一个第一线程组,通过第一线程组的线程组级别的异常处理方法替代第二线程组进行异常捕获等异常处理,从而减少线程级别的异常捕获事件不相互传递导致异常捕获遗漏的问题,从而实现全面的异常处理,减少异常捕获等异常处理等遗漏现象或中断现象。附图说明图1为本专利技术实施例提供的第一种异常检测处理方法的流程示意图;图2为本专利技术实施例提供的一种电子设备的系统框图;图3为本专利技术实施例提供的一种电子设备的结构示意图;图4为本专利技术实施例提供的第二种异常检测处理方法的流程示意图。具体实施方式以下结合说明书附图及具体实施例对本专利技术的技术方案做进一步的详细阐述。研究发现导致异常捕获遗漏问题或中断问题的是:在相关技术都是进行线程级别的异常捕获;操作系统发现异常之后,通知线程组;线程组告知率先建立异常捕获方法的线程进行异常捕获;若一个线程在完成异常捕获之后,不将异常捕获事件传递给其他程序,则会导致捕获的中断,进而导致异常捕获遗漏问题。若一个应用程序中有引入第三软件开发工具(SoftwareDevelopmentKit,SDK)或第三方插件,由于异常程序中自身开发的异常程序不会知晓第三方提供的SDK或第三方插件,显然就更不可能将异常捕获事件传递给第三方SDK或第三方插件,故导致安装有第三方SDK或第三方插件的应用程序的异常检测总是有遗漏。如图1所示,本实施例提供一种异常检测处理方法,包括:步骤S110:创建第一线程组;步骤S120:在所述第一线程组内创建异常处理方法;步骤S130:利用所述第一线程组替代应用程序的第二线程组进行异常处理。本实施例中所述第一线程组可为独立于所述第二线程组。所述第二线程组可为能够接收到操作系统提供的异常捕获事件的任意一个线程组,例如,所述第二线程组可为主函数所在的主线程组,所述主函数可包括:main()函数。再例如,所述第二线程组还可以是其他用于异常捕获等异常处理的线程组,不局限于所述主函数所在的主线程组。在本实施例中,所述第一线程组可为临时或动态创建的线程组。在一些实施例中,步骤S110可包括:在应用程序启动时或启动后,创建所述第一线程组。如此,每次应用程序启动时或启动后创建所述第一线程组,即便应用程序有更新(例如,有引入新的插件或补丁等)可以及时的调整第一线程组内包括的异常处理方法,实现异常捕获等异常的全面处理,避免遗漏及异常处理中断的问题。在一些实施例中,所述步骤S110还可包括:在应用程序有更新时,创建所述第一线程组;否则利用前一次应用程序关闭之前创建的第一线程组进行异常处理,减少第一线程组创建等过程。此处,应用程序有更新可包括:异常程序的代码更新和/或配置信息,例如,应用程序有新增插件和/或新增补丁等。在一些实施例中,在应用程序中设置有创建第一线程组的执行代码及执行参数,该执行代码被调用后会基于所述执行参数创建所述第一线程组,所述执行参数可包括:所述第一线程组的线程组对象等参数。在另一些实施例中,所述执行代码被调用还可包括:向操作系统申请创建和使用所述第一线程组的资源,所述资源可包括:存储资源和/或计算资源等。在本实施例中可基于第一线程组的线程组类,创建所述第一线程组;例如,创建与第二线程组相同类型的第一线程组。在第一线程组内创建异常处理方法,该异常处理方法可为各种程序代码,直接归属于线程组的异常处理方法。在本实施例中利用创建的第二线程组直接进行异常处理,如此,若操作系统发现了异常会产生异常捕获事件并告知第二线程组;直接利用第二线程组内的异常处理方法进行异常捕获,显然就不存在不同线程之间的异常捕获的传递,就不存在因为异常捕获事件传递中断导致的异常捕获遗漏的问题。操作系统发送的异常捕获事件会触发对应的线程组或线程进行异常处理,例如,所述异常处理可包括:异常捕获、异常定位、异常记录及异常上报中的一个或多个。可选地,所述步骤S1本文档来自技高网...
异常检测处理方法及装置、电子设备及计算机存储介质

【技术保护点】
1.一种异常检测处理方法,其特征在于,包括:创建第一线程组;在所述第一线程组内创建异常处理方法;利用所述第一线程组替代应用程序的第二线程组进行异常处理。

【技术特征摘要】
1.一种异常检测处理方法,其特征在于,包括:创建第一线程组;在所述第一线程组内创建异常处理方法;利用所述第一线程组替代应用程序的第二线程组进行异常处理。2.根据权利要求1所述的方法,其特征在于,所述在所述第一线程组内创建异常处理方法,包括:在所述第一线程组内创建第二异常处理方法;将所述应用程序的第一异常处理方法的方法名设置为所述第二异常处理方法的方法名。3.根据权利要求2所述的方法,其特征在于,所述第二异常处理方法的异常处理逻辑,至少部分不同于所述第一异常处理方法的异常处理逻辑。4.根据权利要求2所述的方法,其特征在于,所述第二异常方法包括:继承的所述第一异常处理方法;创建的第三异常处理方法;其中,所述第三异常处理方法的异常处理逻辑不同于所述第一异常处理方法的异常处理逻辑。5.根据权利要求1所述的方法,其特征在于,所述在所述第一线程组内创建异常处理方法,包括:利用覆写机制在所述第一线程组内创建所述异常处理方法。6.根据权利要求1至5任一项所述的方法,其特征在于,所述方法还包括以下至少之一:根据所述第二线程组的属性设置所述第一线程组的属性;根据所述第二线程组的引用设置所述第一线程组的引用。7.根据权利要求6所述的方法,其特征在于,所述根据所述第二线程组的属性设置所述第一线程组的属性,包括以下至少之一:根据所述第...

【专利技术属性】
技术研发人员:李加辉张盼富唐国宁
申请(专利权)人:咪咕文化科技有限公司中国移动通信集团有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1