WO2022206253A1 - 一种异常处理方法、装置、设备及存储介质 - Google Patents

一种异常处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
WO2022206253A1
WO2022206253A1 PCT/CN2022/078363 CN2022078363W WO2022206253A1 WO 2022206253 A1 WO2022206253 A1 WO 2022206253A1 CN 2022078363 W CN2022078363 W CN 2022078363W WO 2022206253 A1 WO2022206253 A1 WO 2022206253A1
Authority
WO
WIPO (PCT)
Prior art keywords
java
exception
event
preset
jni
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2022/078363
Other languages
English (en)
French (fr)
Inventor
刘洪凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing ByteDance Network Technology Co Ltd
Original Assignee
Beijing ByteDance Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing ByteDance Network Technology Co Ltd filed Critical Beijing ByteDance Network Technology Co Ltd
Priority to US18/283,696 priority Critical patent/US12405879B2/en
Publication of WO2022206253A1 publication Critical patent/WO2022206253A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/362Debugging of software
    • G06F11/366Debugging of software using diagnostics
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present disclosure relates to the field of data processing, and in particular, to an exception processing method, apparatus, device, and storage medium.
  • Java Native Interface is a native interface that allows java code running on the JVM to call native code, and also allows native code to call java code.
  • the local code calls the java code running on the JVM through JNI
  • if an abnormal event occurs in the java code the system will not crash, but will return to the local code. If the java code continues to be called at this time, it will be identified as A local crash event, that is, a native crash, can easily lead to inaccurate results of subsequent developers' aggregate analysis of this abnormal event based on the identified crash type.
  • the present disclosure provides an exception handling method, apparatus, device and storage medium, which can report an exception event that occurs in java code as a java crash event, and reduce the type of exception caused by the exception. The probability of inaccurate aggregate analysis results caused by reporting errors.
  • the present disclosure provides an exception handling method, the method comprising:
  • the java exception object corresponding to the abnormal event is obtained; wherein, the java exception object is used to represent the abnormal event;
  • the abnormality identifier is used to represent that the java virtual machine is in an abnormal working state
  • the preset java exception handler is called based on the JNI, and the java exception handler is used to perform exception processing on the java exception object; wherein the java exception handler is used to report the exception event corresponding to the exception object as java crash event.
  • the method further includes:
  • calling a preset java exception handler based on the JNI, and using the java exception handler to perform exception handling on the java exception object includes:
  • Exception processing is performed on the java exception object by using the java exception handler.
  • the method before calling the preset java method in the preset exception resolution class based on the JNI, the method further includes:
  • calling the preset java method in the preset exception resolution class based on the JNI includes:
  • the preset java method in the preset exception resolution class is invoked through the JNI.
  • the present disclosure provides an exception handling method, the method comprising:
  • java exception object Receives a java exception object through JNI; wherein, the java exception object is used to represent an exception event that occurs by calling java code based on JNI;
  • a preset java exception handler is invoked, and the java exception handler is used to perform exception handling on the java exception object; wherein the java exception handler is used to report the exception event corresponding to the exception object as a java crash event.
  • the present disclosure provides an exception processing device, the device comprising:
  • an obtaining module configured to obtain a java exception object corresponding to the exception event when it is determined that an exception event occurs in the java code invoked based on the java local interface JNI; wherein the java exception object is used to represent the exception event;
  • a deletion module used to delete the abnormality identifier corresponding to the abnormal event; the abnormality identifier is used to represent that the java virtual machine is in an abnormal working state;
  • a first exception handling module configured to call a preset java exception handler based on the JNI, and use the java exception handler to perform exception handling on the java exception object; wherein the java exception handler is used to The exception event corresponding to the exception object is reported as a java crash event.
  • the present disclosure provides an exception handling device, the device comprising:
  • the receiving module is used to receive the java exception object through JNI; wherein, the java exception object is used to represent the abnormal event that occurs based on the JNI calling java code;
  • the second exception handling module is used to call a preset java exception handler, and use the java exception handler to perform exception handling on the java exception object; wherein the java exception handler is used to Abnormal events are reported as java crash events.
  • the present disclosure provides a computer-readable storage medium, where instructions are stored in the computer-readable storage medium, and when the instructions are executed on a terminal device, the terminal device is made to implement the above method.
  • the present disclosure provides a device comprising: a memory, a processor, and a computer program stored on the memory and executable on the processor, when the processor executes the computer program, Implement the above method.
  • the present disclosure provides a computer program product, wherein the computer program product includes a computer program/instruction, and the computer program/instruction implements the above method when executed by a processor.
  • the embodiment of the present disclosure provides an exception handling method. Specifically, if it is determined that an exception event occurs in the java code invoked based on the java native interface JNI, the java exception object corresponding to the exception event is obtained; wherein, the java exception object uses to characterize the abnormal event. Then, the abnormality identifier corresponding to the abnormal event is deleted; the abnormality identifier is used to represent that the java virtual machine is in an abnormal working state. Finally, the preset java exception handler is called based on the JNI, and the java exception handler is used to perform exception processing on the java exception object; wherein, the java exception handler is used for the exception event corresponding to the exception object It is reported as a java crash event.
  • the embodiments of the present disclosure process the abnormal events that occur in the java code by invoking the java exception handling program, and report the abnormal events that occur in the java code as java crash events, thereby reducing the occurrence of inaccurate aggregation analysis results caused by errors in abnormal event type reporting. probability.
  • FIG. 1 is a flowchart of an exception handling method provided by an embodiment of the present disclosure
  • FIG. 2 is a flowchart of another exception handling method provided by an embodiment of the present disclosure.
  • FIG. 3 is a schematic structural diagram of an exception processing apparatus provided by an embodiment of the present disclosure.
  • FIG. 4 is a schematic structural diagram of another exception processing apparatus provided by an embodiment of the present disclosure.
  • FIG. 5 is a schematic structural diagram of an exception processing device according to an embodiment of the present disclosure.
  • the java native interface (Java Native Interface; JNI) allows java code to interact with code written in other languages.
  • JNI Java Native Interface
  • the native code calls java code through JNI, if an exception occurs in the java code, it should theoretically be recognized as a java crash event, but , At present, the abnormal event that occurs in the java code in the above scenario is incorrectly identified as a native crash event, which leads to inaccuracy and other problems in the subsequent aggregation analysis of abnormal events based on the wrong identification.
  • the embodiments of the present disclosure provide an exception handling method.
  • the exception event that occurs in the java code in the above scenario can be reported as a java crash event, thereby improving The accuracy of subsequent aggregated analysis results of abnormal events is improved.
  • a java exception object corresponding to the abnormal event is obtained; wherein, the java exception object is used to represent the abnormal event.
  • the abnormality identifier corresponding to the abnormal event is deleted; the abnormality identifier is used to represent that the java virtual machine is in an abnormal working state.
  • the preset java exception handler is called based on the JNI, and the java exception handler is used to perform exception processing on the java exception object; wherein, the java exception handler is used for the exception event corresponding to the exception object Reported as a java crash event.
  • an embodiment of the present disclosure provides an exception handling method.
  • a flowchart of an exception handling method provided by an embodiment of the present disclosure includes:
  • the java exception object is used to represent the exception event.
  • the exception handling method provided by the embodiment of the present disclosure is applied to the native layer, that is, the native code. Specifically, when it is determined that an abnormal event occurs in the java code invoked based on JNI, the java exception object corresponding to the abnormal event is first obtained.
  • the java exception object includes event information of the exception event, for example, the occurrence event of the exception event, the event feature, and the like.
  • the CheckException function can be used to check whether an abnormal event occurs in the called java code. If it is determined that no abnormal event has occurred, just return the check result. If it is determined that an abnormal event has occurred in the called java code, the currently thrown java exception object can be obtained through the ExceptionOccurred function, and the java exception object is recorded as throwable.
  • the exception identifier is used to represent that the java virtual machine is in an abnormal working state.
  • the abnormal identifier corresponding to the abnormal event may also be deleted.
  • an exception identifier is marked for the abnormal event to indicate that the java virtual machine is in an abnormal working state.
  • the embodiment of the present disclosure deletes the exception identifier used to indicate that the java virtual machine is in an abnormal working state.
  • the ExceptionClear function may be called to clear the current exception identifier.
  • the purpose of clearing the current exception identifier is to continue calling the java code in the future.
  • S103 Call a preset java exception handler based on the JNI, and use the java exception handler to perform exception processing on the java exception object.
  • the java exception handler is used to report the exception event corresponding to the exception object as a java crash event.
  • the embodiment of the present disclosure after the exception identifier is deleted and the java exception object is obtained, the preset java exception handler is invoked based on JNI. Since the java exception handler is used to report the exception event corresponding to the exception object as a java crash event, the embodiment of the present disclosure can process the java exception object by calling the java exception handler, and can report the exception event corresponding to the java exception object as java crash event.
  • a preset java method in a preset exception resolution class can be called based on JNI, and the java exception object can be passed to the preset java method, and the preset java method can be called by using the preset java method.
  • the exception handler transfers the java exception object to the java exception handler, uses the java exception handler to perform exception processing on the java exception object, and reports the exception event corresponding to the java exception object as a java crash event.
  • the default exception resolution class can be set as a global reference.
  • the identifier of the preset java method in the preset exception resolution class can be obtained in advance, so that the identifier can be used for subsequent processing based on the identifier. make a call.
  • the JNIExecptionHelper class may be pre-defined as a preset exception resolution class, and the handleJNIException method may be declared in the JNIExecptionHelper class as a preset java method in the preset exception resolution class.
  • init a native method named init, the init method, is also declared in the JNIExecptionHelper class.
  • the embodiment of the present disclosure can also call the GetStaticMethodID function to obtain the id of the handleJNIException method, and record it as midHandleJNIException and save it.
  • a java exception object corresponding to the exception event is obtained; wherein, the java exception object is used to represent the abnormal event.
  • the abnormality identifier corresponding to the abnormal event is deleted; the abnormality identifier is used to represent that the java virtual machine is in an abnormal working state.
  • the preset java exception handler is called based on the JNI, and the java exception handler is used to perform exception processing on the java exception object; wherein, the java exception handler is used for the exception event corresponding to the exception object Reported as a java crash event.
  • the abnormal event that occurs in the java code in the above scenario can be reported as the java crash event, which improves the accuracy of the subsequent aggregation analysis results of the abnormal event. sex.
  • the embodiments of the present disclosure also provide an exception handling method.
  • FIG. 2 it is a flowchart of another exception handling method provided by the embodiments of the present disclosure.
  • the method is applied to the java layer, that is, in the java code. .
  • the method includes:
  • the java exception object is used to represent an exception event that occurs based on JNI calling java code.
  • a java exception object corresponding to the abnormal event can be received through JNI for subsequent processing of the abnormal event.
  • the handleJNIException method in the JNIExecptionHelper class can receive the java exception object throwable through JNI, and record the throwable as jthrowable.
  • S202 Call a preset java exception handler, and use the java exception handler to perform exception handling on the java exception object; wherein the java exception handler is used to report the exception event corresponding to the exception object as a java crash event.
  • the current java exception handler can be obtained through the getDefaultUncaughtExceptionHandler method of the Thread class, that is, the java exception handler preset in the embodiment of the present disclosure, denoted as currentHandler .
  • currentHandler is the java exception handler registered by default when the java crash monitoring program starts, using currentHandler to handle an exception event will report the exception event as a java crash event. Specifically, by calling the uncaughtException method of currentHandler, the java crash monitoring program can be notified that a java crash event has occurred, and then the crash information can be collected, and the collected crash information can be reported at an appropriate time, which is used for the current java crash event. analysis.
  • the present disclosure also provides an exception handling apparatus.
  • FIG. 3 a schematic structural diagram of an exception handling apparatus provided in an embodiment of the present disclosure, the apparatus includes:
  • the obtaining module 301 is configured to obtain a java exception object corresponding to the exception event when it is determined that an exception event occurs in the java code invoked based on the java local interface JNI; wherein, the java exception object is used to represent the exception event;
  • the deletion module 302 is used to delete the abnormality identifier corresponding to the abnormal event; the abnormality identifier is used to represent that the java virtual machine is in an abnormal working state;
  • the first exception handling module 303 is configured to call a preset java exception handler based on the JNI, and use the java exception handler to perform exception handling on the java exception object; wherein the java exception handler is used for Report the exception event corresponding to the exception object as a java crash event.
  • the device further includes:
  • the determining module is configured to determine whether an abnormal event occurs in the invoked java code after detecting that the java code is invoked based on the JNI.
  • the first exception handling module includes:
  • a first delivery submodule configured to call a preset java method in a preset exception resolution class based on the JNI, and transfer the java exception object to the preset java method;
  • a second delivery submodule configured to use the preset java method to call a preset java exception handler, and deliver the java exception object to the java exception handler;
  • the first exception handling submodule is configured to perform exception handling on the java exception object by using the java exception handler.
  • the first exception handling module further includes:
  • the first transfer submodule is specifically used for:
  • the preset java method in the preset exception resolution class is invoked through the JNI.
  • the present disclosure also provides another exception handling apparatus.
  • FIG. 4 a schematic structural diagram of another exception handling apparatus provided by the embodiment of the present disclosure, the apparatus includes:
  • the receiving module 401 is used to receive a java exception object through JNI; wherein, the java exception object is used to represent an exception event that occurs based on JNI calling java code;
  • the second exception handling module 402 is configured to call a preset java exception handler, and use the java exception handler to perform exception handling on the java exception object; wherein the java exception handler is used to map the exception object to The abnormal event is reported as a java crash event.
  • a java exception object corresponding to the exception event is obtained; wherein, the java exception object is used to represent the abnormal event.
  • the abnormality identifier corresponding to the abnormal event is deleted; the abnormality identifier is used to represent that the java virtual machine is in an abnormal working state.
  • the preset java exception handler is invoked based on the JNI, and the java exception handler is used to perform exception processing on the java exception object; wherein the java exception handler is used for the exception event corresponding to the exception object It is reported as a java crash event.
  • the abnormal event that occurs in the java code in the above scenario can be reported as a java crash event, which improves the accuracy of the subsequent aggregation analysis results of the abnormal event. sex.
  • embodiments of the present disclosure also provide a computer-readable storage medium, where instructions are stored in the computer-readable storage medium, and when the instructions are executed on a terminal device, the terminal device is made to implement the present invention.
  • the exception handling method described in the embodiments is disclosed.
  • An embodiment of the present disclosure also provides a computer program product, including a computer program/instruction, characterized in that, when the computer program/instruction is executed by a processor, the exception handling method described in the embodiment of the present disclosure is implemented.
  • an embodiment of the present disclosure also provides an exception processing device, as shown in FIG. 5 , which may include:
  • Processor 501 memory 502 , input device 503 and output device 504 .
  • the number of processors 501 in the exception handling device may be one or more, and one processor is taken as an example in FIG. 5 .
  • the processor 501 , the memory 502 , the input device 503 and the output device 504 may be connected by a bus or in other ways, wherein the connection by a bus is taken as an example in FIG. 5 .
  • the memory 502 can be used to store software programs and modules, and the processor 501 executes various functional applications and data processing of the exception handling device by running the software programs and modules stored in the memory 502 .
  • the memory 502 may mainly include a stored program area and a stored data area, wherein the stored program area may store an operating system, an application program required for at least one function, and the like. Additionally, memory 502 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device.
  • the input device 503 can be used to receive input numerical or character information, and generate signal input related to user setting and function control of the exception handling device.
  • the processor 501 loads the executable files corresponding to the processes of one or more application programs into the memory 502 according to the following instructions, and the processor 501 runs the executable files stored in the memory 502 application program, so as to realize various functions of the above exception handling device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

本公开提供了一种异常处理方法、装置、设备及存储介质,所述方法包括:如果确定基于JNI调用的java代码发生异常事件,则获取异常事件对应的java异常对象。然后,删除异常事件对应的异常标识。最终,基于JNI调用预置的java异常处理程序,利用java异常处理程序对java异常对象进行异常处理;java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。本公开通过调用java异常处理程序对java代码发生的异常事件进行处理,将java代码发生的异常事件上报为java崩溃事件,降低因异常事件类型上报错误导致的聚合分析结果不准确问题的发生概率。

Description

一种异常处理方法、装置、设备及存储介质
相关申请的交叉引用
本申请要求于2021年03月29日提交的,申请号为202110333171.6、发明名称为“一种异常处理方法、装置、设备及存储介质”的中国专利申请的优先权,该申请的全部内容通过引用结合在本申请中。
技术领域
本公开涉及数据处理领域,尤其涉及一种异常处理方法、装置、设备及存储介质。
背景技术
java本地接口(Java Native Interface;JNI),是一种允许运行于java虚拟机JVM的java代码去调用本地代码,同时也允许本地代码去调用java代码的本地接口。
目前,当本地代码通过JNI去调用运行于JVM的java代码时,如果java代码发生异常事件,系统不会崩溃,而是返回至本地代码,如果此时再继续调用java代码,则会被认定为本地发生崩溃事件,即native崩溃,很容易导致后续开发人员基于认定的崩溃类型对本次异常事件进行聚合分析等处理的结果不准确。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种异常处理方法、装置、设备及存储介质,能够将java代码发生的异常事件上报为java崩溃事件,降低因异常事件类型上报错误导致的聚合分析结果不准确问题的发生概率。
第一方面,本公开提供了一种异常处理方法,所述方法包括:
如果确定基于java本地接口JNI调用的java代码发生异常事件,则获取所述异常事件对应的java异常对象;其中,所述java异常对象用于表征所述异常事件;
删除所述异常事件对应的异常标识;所述异常标识用于表征java虚拟机处于异常工作状态;
基于所述JNI调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。
一种可选的实施方式中,所述如果确定基于java本地接口JNI调用的java代码发生异常事件,则获取所述异常事件对应的java异常对象之前,还包括:
在检测到基于JNI调用java代码后,确定被调用的所述java代码是否发生异常事件。
一种可选的实施方式中,所述基于所述JNI调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理,包括:
基于所述JNI调用预设异常解决类中的预设java方法,并将所述java异常对象传递至所述预设java方法;
利用所述预设java方法调用预置的java异常处理程序,并将所述java异常对象传递至所述java异常处理程序;
利用所述java异常处理程序对所述java异常对象进行异常处理。
一种可选的实施方式中,所述基于所述JNI调用预设异常解决类中的预设java方法之前,还包括:
将预设异常解决类设置为全局引用;
获取所述预设异常解决类中的预设java方法的标识;
相应的,所述基于所述JNI调用预设异常解决类中的预设java方法,包括:
基于所述预设java方法的标识,通过所述JNI调用预设异常解决类中的所述预设java方法。
第二方面,本公开提供了一种异常处理方法,所述方法包括:
通过JNI接收java异常对象;其中,所述java异常对象用于表征基于JNI调用java代码发生的异常事件;
调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。
第三方面,本公开提供了一种异常处理装置,所述装置包括:
获取模块,用于在确定基于java本地接口JNI调用的java代码发生异常事件时,获取所述异常事件对应的java异常对象;其中,所述java异常对象用于表征所述异常事件;
删除模块,用于删除所述异常事件对应的异常标识;所述异常标识用于表征java虚拟机处于异常工作状态;
第一异常处理模块,用于基于所述JNI调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。
第四方面,本公开提供了一种异常处理装置,所述装置包括:
接收模块,用于通过JNI接收java异常对象;其中,所述java异常对象用于表征基于JNI调用java代码发生的异常事件;
第二异常处理模块,用于调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。
第五方面,本公开提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备实现上述的方法。
第六方面,本公开提供了一种设备,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现上述的方法。
第七方面,本公开提供了一种计算机程序产品,所述计算机程序产品包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现上述的方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
本公开实施例提供了一种异常处理方法,具体的,如果确定基于java本地接口JNI调用的java代码发生异常事件,则获取所述异常事件对应的java异常对象;其中,所述java异常对象用于表征所述异常事件。然后,删除所述异常事件对应的异常标识;所述异常标识用于表征java虚拟机处于异常工作状态。最终,基于所述JNI调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。本公开实施例通过调用java异常处理程序对java代码发生的异常事件进行处理,将java代码发生的异常事件上报为java崩溃事件,降低因异常事件类型上报错误导致的聚合分析结果不准确问题的发生概率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的一种异常处理方法的流程图;
图2为本公开实施例提供的另一种异常处理方法的流程图;
图3为本公开实施例提供的一种异常处理装置的结构示意图;
图4为本公开实施例提供的另一种异常处理装置的结构示意图;
图5为本公开实施例提供的一种异常处理设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
java本地接口(Java Native Interface;JNI)允许java代码与其他语言编写的代码进行交互,在本地代码通过JNI调用java代码时,如果java代码发生异常,则理论上应该被认定为java崩溃事件,但是,目前是将上述场景下java代码发生的异常事件错误的认定为native崩溃事件,导致基于错误的认定进行后续的异常事件聚合分析时容易出现不准确等问题。
为此,本公开实施例提供了一种异常处理方法,通过调用java异常处理程序对java代码发生的异常事件进行处理,能够将上述场景下的java代码发生的异常事件上报为java崩溃事件,提高了后续对异常事件的聚合分析结果的准确性。
具体的,如果确定基于java本地接口JNI调用的java代码发生异常事件,则获取所述异常事件对应的java异常对象;其中,所述java异常对象用于表征所述异常事件。然后,删除所述异常事件对应的异常标识;所述异常标识用于表征java虚拟机处于异常工作状态。最终,基于所述JNI调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。
基于此,本公开实施例提供了一种异常处理方法,参考图1,为本公开实施例提供的一种异常处理方法的流程图,该方法包括:
S101:如果确定基于java本地接口JNI调用的java代码发生异常事件,则获取所述异常事件对应的java异常对象。
其中,所述java异常对象用于表征所述异常事件。
本公开实施例提供的异常处理方法应用于native层,即本地代码中,具体的,在确定基于JNI调用的java代码发生异常事件时,首先获取该异常事件对应的java异常对象。其中,java异常对象包含该异常事件的事件信息,例如,异常事件发生事件、事件特征等。
一种可选的实施方式中,在检测到基于JNI调用java代码后,确定被调用的所述java代码是否发生异常事件。也就是说,在JNI代码中调用任何一个java方法之后均检是否发生了异常事件。
一种可选的实施方式中,可以通过CheckException函数检查被调用的java代码是否发生异常事件。如果确定未发生异常事件,则返回检查结果即可,如果确定被调用的java代码发生异常事件,则可以通过ExceptionOccurred函数获取当前抛出的java异常对象,将该java异常对象记为throwable。
S102:删除所述异常事件对应的异常标识。
所述异常标识用于表征java虚拟机处于异常工作状态。
本公开实施例中,在确定基于JNI调用的java代码发生异常事件之后,还可以删除该异常事件对应的异常标识。
实际应用中,当运行于java虚拟机上的java代码发生异常事件时,为该异常事件标记异常标识,以表征该java虚拟机处于异常工作状态。为了使得该java虚拟机重新恢复正常工作状态,以便后续利用java虚拟机处理异常,本公开实施例将用于表征java虚拟机处于异常工作状态的异常标识删除。
一种可选的实施方式中,可以调用ExceptionClear函数清除当前的异常标识,具体的,清除当前的异常标识的目的是为了后续可以继续调用java代码。
S103:基于所述JNI调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理。
其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。
本公开实施例中,在删除异常标识以及获取到java异常对象之后,基于JNI调用预置的java异常处理程序。由于java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件,因此,本公开实施例可以通过调用java异常处理程序处理java异常对象,可以将该java异常对象对应的异常事件上报为java崩溃事件。
一种可选的实施方式中,可以基于JNI调用预设异常解决类中的预设java方法,并将 java异常对象传递至该预设java方法,并利用该预设java方法调用预置的java异常处理程序,将该java异常对象传递至该java异常处理程序,并利用该java异常处理程序对该java异常对象进行异常处理,将该java异常对象对应的异常事件上报为java崩溃事件。
实际应用中,为了使得其他线程也能够使用JNIExceptionHelper类的引用,可以将预设异常解决类设置为全局引用。另外,为了后续其他线程也能够对预设异常解决类中的所述预设java方法进行调用,可以预先获取到预设异常解决类中的预设java方法的标识,以便后续基于该标识对其进行调用。
一种可选的实施方式中,可以预先定义JNIExecptionHelper类,作为预设异常解决类,在JNIExecptionHelper类中声明handleJNIException方法,作为预设异常解决类中的预设java方法。
另外,在JNIExecptionHelper类中还声明了一个名为init的本地方法,即init方法。在初始化阶段可以调用JNIExecptionHelper类中init方法,将JNIExecptionHelper类的native本地层引用通过NewGlobalRef函数转化为全局引用,并记为clz保存下来,以便JNIExecptionHelper类的handleJNIException方法能够在其他线程被调用。
另外,本公开实施例还可以调用GetStaticMethodID函数得到handleJNIException方法的id,并记为midHandleJNIException保存下来。
实际应用中,可以基于保存下来的midHandleJNIException,通过JNI调用JNIExecptionHelper类中的handleJNIException方法,以便利用handleJNIException方法调用预置的java异常处理程序,并将java异常对象传递至java异常处理程序后,由java异常处理程序对java异常对象进行异常处理,从而将java异常对象对应的异常事件上报为java崩溃事件。
本公开实施例提供的异常处理方法中,在确定基于java本地接口JNI调用的java代码发生异常事件时,获取所述异常事件对应的java异常对象;其中,所述java异常对象用于表征所述异常事件。然后,删除所述异常事件对应的异常标识;所述异常标识用于表征java虚拟机处于异常工作状态。最终,基于所述JNI调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。本公开实施例通过调用java异常处理程序对java代码发生的异常事件进行处理,能够将上述场景下的java代码发生的异常事件 上报为java崩溃事件,提高了后续对异常事件的聚合分析结果的准确性。
基于上述实施例,本公开实施例还提供了一种异常处理方法,参考图2,为本公开实施例提供的另一种异常处理方法的流程图,该方法应用于java层,即java代码中。具体的,该方法包括:
S201:通过JNI接收java异常对象。
其中,所述java异常对象用于表征基于JNI调用java代码发生的异常事件。
本公开实施例中,在基于JNI调用java代码发生异常事件后,可以通过JNI接收该异常事件对应的java异常对象,用于后续对该异常事件的处理。
一种可选的实施方式中,JNIExecptionHelper类中的handleJNIException方法可以通过JNI接收java异常对象throwable,并将throwable记为jthrowable。
S202:调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。
本公开实施例中,NIExecptionHelper类中的handleJNIException方法获取到jthrowable之后,可以通过Thread类的getDefaultUncaughtExceptionHandler方法,获取当前的java异常处理器,即本公开实施例中预置的java异常处理程序,记为currentHandler。
实际应用中,首先确定currentHandler是否为空,如果为空,则说明当前currentHandler不可用,如果不为空,则可以调用currentHandler的uncaughtException方法,并将通过调用Thread类的currentThread方法获取到的当前线程对象和jthrowable作为参数传递给currentHandler的uncaughtException方法,用于实现对jthrowable的异常处理。
由于currentHandler为java崩溃监控程序在启动时默认注册的java异常处理程序,因此利用currentHandler处理异常事件,则会将该异常事件上报为java崩溃事件。具体的,通过调用currentHandler的uncaughtException方法可以通知java崩溃监控程序当前发生了java崩溃事件,随后可以进行崩溃信息的收集,并在合适的时机上报收集到的崩溃信息,用于对本次java崩溃事件进行分析。
基于上述方法实施例,本公开还提供了一种异常处理装置,参考图3,为本公开实施 例提供的一种异常处理装置的结构示意图,所述装置包括:
获取模块301,用于在确定基于java本地接口JNI调用的java代码发生异常事件时,获取所述异常事件对应的java异常对象;其中,所述java异常对象用于表征所述异常事件;
删除模块302,用于删除所述异常事件对应的异常标识;所述异常标识用于表征java虚拟机处于异常工作状态;
第一异常处理模块303,用于基于所述JNI调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。
一种可选的实施方式中,所述装置还包括:
确定模块,用于在检测到基于JNI调用java代码后,确定被调用的所述java代码是否发生异常事件。
一种可选的实施方式中,所述第一异常处理模块,包括:
第一传递子模块,用于基于所述JNI调用预设异常解决类中的预设java方法,并将所述java异常对象传递至所述预设java方法;
第二传递子模块,用于利用所述预设java方法调用预置的java异常处理程序,并将所述java异常对象传递至所述java异常处理程序;
第一异常处理子模块,用于利用所述java异常处理程序对所述java异常对象进行异常处理。
一种可选的实施方式中,所述第一异常处理模块,还包括:
设置子模块,用于将预设异常解决类设置为全局引用;
获取子模块,用于获取所述预设异常解决类中的预设java方法的标识;
相应的,所述第一传递子模块,具体用于:
基于所述预设java方法的标识,通过所述JNI调用预设异常解决类中的所述预设java方法。
在上述实施例的基础上,本公开还提供了另一种异常处理装置,参考图4,为本公开实施例提供的另一种异常处理装置的结构示意图,所述装置包括:
接收模块401,用于通过JNI接收java异常对象;其中,所述java异常对象用于表征 基于JNI调用java代码发生的异常事件;
第二异常处理模块402,用于调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。
本公开实施例提供的异常处理装置中,在确定基于java本地接口JNI调用的java代码发生异常事件时,获取所述异常事件对应的java异常对象;其中,所述java异常对象用于表征所述异常事件。然后,删除所述异常事件对应的异常标识;所述异常标识用于表征java虚拟机处于异常工作状态。最终,基于所述JNI调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。本公开实施例通过调用java异常处理程序对java代码发生的异常事件进行处理,能够将上述场景下的java代码发生的异常事件上报为java崩溃事件,提高了后续对异常事件的聚合分析结果的准确性。
除了上述方法和装置以外,本公开实施例还提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备实现本公开实施例所述的异常处理方法。
本公开实施例还提供了一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现本公开实施例所述的异常处理方法。
另外,本公开实施例还提供了一种异常处理设备,参见图5所示,可以包括:
处理器501、存储器502、输入装置503和输出装置504。异常处理设备中的处理器501的数量可以一个或多个,图5中以一个处理器为例。在本公开的一些实施例中,处理器501、存储器502、输入装置503和输出装置504可通过总线或其它方式连接,其中,图5中以通过总线连接为例。
存储器502可用于存储软件程序以及模块,处理器501通过运行存储在存储器502的软件程序以及模块,从而执行异常处理设备的各种功能应用以及数据处理。存储器502可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性 存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。输入装置503可用于接收输入的数字或字符信息,以及产生与异常处理设备的用户设置以及功能控制有关的信号输入。
具体在本实施例中,处理器501会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器502中,并由处理器501来运行存储在存储器502中的应用程序,从而实现上述异常处理设备的各种功能。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

  1. 一种异常处理方法,其特征在于,所述方法包括:
    如果确定基于java本地接口JNI调用的java代码发生异常事件,则获取所述异常事件对应的java异常对象;其中,所述java异常对象用于表征所述异常事件;
    删除所述异常事件对应的异常标识;所述异常标识用于表征java虚拟机处于异常工作状态;
    基于所述JNI调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。
  2. 根据权利要求1所述的方法,其特征在于,所述如果确定基于java本地接口JNI调用的java代码发生异常事件,则获取所述异常事件对应的java异常对象之前,还包括:
    在检测到基于JNI调用java代码后,确定被调用的所述java代码是否发生异常事件。
  3. 根据权利要求1所述的方法,其特征在于,所述基于所述JNI调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理,包括:
    基于所述JNI调用预设异常解决类中的预设java方法,并将所述java异常对象传递至所述预设java方法;
    利用所述预设java方法调用预置的java异常处理程序,并将所述java异常对象传递至所述java异常处理程序;
    利用所述java异常处理程序对所述java异常对象进行异常处理。
  4. 根据权利要求3所述的方法,其特征在于,所述基于所述JNI调用预设异常解决类中的预设java方法之前,还包括:
    将预设异常解决类设置为全局引用;
    获取所述预设异常解决类中的预设java方法的标识;
    相应的,所述基于所述JNI调用预设异常解决类中的预设java方法,包括:
    基于所述预设java方法的标识,通过所述JNI调用预设异常解决类中的所述预设java方法。
  5. 一种异常处理方法,其特征在于,所述方法包括:
    通过JNI接收java异常对象;其中,所述java异常对象用于表征基于JNI调用java代码发生的异常事件;
    调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。
  6. 一种异常处理装置,其特征在于,所述装置包括:
    获取模块,用于在确定基于java本地接口JNI调用的java代码发生异常事件时,获取所述异常事件对应的java异常对象;其中,所述java异常对象用于表征所述异常事件;
    删除模块,用于删除所述异常事件对应的异常标识;所述异常标识用于表征java虚拟机处于异常工作状态;
    第一异常处理模块,用于基于所述JNI调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。
  7. 一种异常处理装置,其特征在于,所述装置包括:
    接收模块,用于通过JNI接收java异常对象;其中,所述java异常对象用于表征基于JNI调用java代码发生的异常事件;
    第二异常处理模块,用于调用预置的java异常处理程序,并利用所述java异常处理程序对所述java异常对象进行异常处理;其中,所述java异常处理程序用于将异常对象对应的异常事件上报为java崩溃事件。
  8. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备实现如权利要求1-5任一项所述的方法。
  9. 一种设备,其特征在于,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-5任一项所述的方法。
  10. 一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现如权利要求1-5任一项所述的方法。
PCT/CN2022/078363 2021-03-29 2022-02-28 一种异常处理方法、装置、设备及存储介质 Ceased WO2022206253A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/283,696 US12405879B2 (en) 2021-03-29 2022-02-28 Exception handling method and apparatus, device, and storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110333171.6 2021-03-29
CN202110333171.6A CN113032100B (zh) 2021-03-29 2021-03-29 一种异常处理方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
WO2022206253A1 true WO2022206253A1 (zh) 2022-10-06

Family

ID=76452704

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/078363 Ceased WO2022206253A1 (zh) 2021-03-29 2022-02-28 一种异常处理方法、装置、设备及存储介质

Country Status (3)

Country Link
US (1) US12405879B2 (zh)
CN (1) CN113032100B (zh)
WO (1) WO2022206253A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118132344A (zh) * 2024-05-06 2024-06-04 四川天邑康和通信股份有限公司 Iptv机顶盒的运行控制方法和装置、机顶盒及介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113032100B (zh) 2021-03-29 2023-07-18 北京字节跳动网络技术有限公司 一种异常处理方法、装置、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050204341A1 (en) * 2004-03-11 2005-09-15 International Business Machines Corp. Method, system and article for detecting critical memory leaks causing out-of-memory errors in Java software
US20090217245A1 (en) * 2008-02-26 2009-08-27 International Business Machines Corporation Method and implementation for constructing of corrected java native code
CN101794243A (zh) * 2010-03-18 2010-08-04 浪潮电子信息产业股份有限公司 一种利用操作系统结构化异常处理加固java应用程序的方法
CN108334415A (zh) * 2017-01-20 2018-07-27 百度在线网络技术(北京)有限公司 一种容错处理方法、装置、终端及存储介质
CN108763060A (zh) * 2018-04-27 2018-11-06 广州华多网络科技有限公司 Android系统中Native层崩溃溯源方法、装置、存储介质及终端
CN111414270A (zh) * 2020-03-24 2020-07-14 北京字节跳动网络技术有限公司 一种异常处理方法及装置
CN113032100A (zh) * 2021-03-29 2021-06-25 北京字节跳动网络技术有限公司 一种异常处理方法、装置、设备及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6457142B1 (en) * 1999-10-29 2002-09-24 Lucent Technologies Inc. Method and apparatus for target application program supervision
US7793275B2 (en) * 2006-03-31 2010-09-07 Intel Corporation Methods and apparatus to tune intermediate representations in a managed runtime environment
US8074116B2 (en) * 2009-05-06 2011-12-06 Microsoft Corporation Exception raised notification

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050204341A1 (en) * 2004-03-11 2005-09-15 International Business Machines Corp. Method, system and article for detecting critical memory leaks causing out-of-memory errors in Java software
US20090217245A1 (en) * 2008-02-26 2009-08-27 International Business Machines Corporation Method and implementation for constructing of corrected java native code
CN101794243A (zh) * 2010-03-18 2010-08-04 浪潮电子信息产业股份有限公司 一种利用操作系统结构化异常处理加固java应用程序的方法
CN108334415A (zh) * 2017-01-20 2018-07-27 百度在线网络技术(北京)有限公司 一种容错处理方法、装置、终端及存储介质
CN108763060A (zh) * 2018-04-27 2018-11-06 广州华多网络科技有限公司 Android系统中Native层崩溃溯源方法、装置、存储介质及终端
CN111414270A (zh) * 2020-03-24 2020-07-14 北京字节跳动网络技术有限公司 一种异常处理方法及装置
CN113032100A (zh) * 2021-03-29 2021-06-25 北京字节跳动网络技术有限公司 一种异常处理方法、装置、设备及存储介质

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS: "JNI Crash: Exception Location and Capture Processing", BAIDU, 6 July 2018 (2018-07-06), XP055973231, Retrieved from the Internet <URL:https://www.jianshu.com/p/b6129f110e86> [retrieved on 20221020] *
ANONYMOUS: "JNI exception handling", BAIDU, 11 July 2020 (2020-07-11), XP055973229, Retrieved from the Internet <URL:https://zhuanlan.zhihu.com/p/158727336> [retrieved on 20221020] *
ANONYMOUS: "JNI exception handling", BAIDU, 13 October 2018 (2018-10-13), XP055973233, Retrieved from the Internet <URL:https://blog.csdn.net/b1480521874/article/details/83040400> [retrieved on 20221020] *
CHANG LIMEI, INFORMATION & TECHNOLOGY, CHINA DOCTORAL DISSERTATIONS/MASTER'S THESES FULL-TEXT DATABASE (MASTER) (MONTHLY): "Design and Implementation of Android Mobile Application Defect Monitoring System", MASTER THESIS, TIANJIN POLYTECHNIC UNIVERSITY, CN, no. 12, 15 January 2019 (2019-01-15), CN , XP055973143, ISSN: 1674-0246 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118132344A (zh) * 2024-05-06 2024-06-04 四川天邑康和通信股份有限公司 Iptv机顶盒的运行控制方法和装置、机顶盒及介质

Also Published As

Publication number Publication date
US12405879B2 (en) 2025-09-02
CN113032100B (zh) 2023-07-18
US20240168865A1 (en) 2024-05-23
CN113032100A (zh) 2021-06-25

Similar Documents

Publication Publication Date Title
CN110865888B (zh) 一种资源加载方法、装置、服务器及存储介质
US20100058351A1 (en) Information processing apparatus and information processing method
WO2019161619A1 (zh) 接口自动化测试方法、装置、设备及计算机可读存储介质
CN108038039B (zh) 记录日志的方法及微服务系统
CN108170552B (zh) 一种抓取Dump文件的方法、装置和设备
WO2022206253A1 (zh) 一种异常处理方法、装置、设备及存储介质
CN110727581A (zh) 崩溃定位方法与电子设备
CN110992188B (zh) 交易处理方法、装置及设备
CN112035292A (zh) 一种数据写入异常的处理方法、装置、设备及存储介质
CN117992204A (zh) 内存检测方法、装置、设备及存储介质
CN112667371B (zh) 异步任务的处理方法、装置、设备及存储介质
CN112787999B (zh) 跨链调用方法、装置、系统与计算机可读存储介质
CN116450398A (zh) 异常回溯方法、装置、设备和介质
CN110134498A (zh) 一种应用兼容性评估方法及装置
CN114356211B (zh) 一种存储空间的处理方法、装置、电子设备及存储介质
CN113900743B (zh) 一种Java对象访问的方法和装置
CN116225755A (zh) 云计算环境的容器处理方法、装置、电子设备及可读介质
US20220269520A1 (en) Factor identification method and information processing device
CN111858258A (zh) 一种内存监控方法、装置及电子设备和存储介质
CN113961366B (zh) 操作系统的内核函数调用方法及计算机设备
CN115269252A (zh) 应用程序故障处理方法、装置、设备及存储介质
CN116126703A (zh) 调试方法、调试装置及可读存储装置
CN108920683A (zh) 一种云计算平台下载外部资源的方法、装置和存储介质
CN115469934A (zh) 配置文件加载方法、装置及设备
WO2022237570A1 (zh) 死锁检测方法、装置以及相关设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22778438

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 18283696

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 150224)

122 Ep: pct application non-entry in european phase

Ref document number: 22778438

Country of ref document: EP

Kind code of ref document: A1

WWG Wipo information: grant in national office

Ref document number: 18283696

Country of ref document: US