Break on next called function or method in java debugger agent
AssigneeOracle International Corporation
InventorsKumar Ashish, Nataraju Neeluru
Life of this patent
Estimating the term…
Abstract
Embodiments of the invention provide systems and methods for optimizing handling of breakpoints in a Java debugger agent. Embodiments provide a novel command that allows execution of the application in the debugger to stop or break at the beginning of a next called function or method (e.g., a “break on next called function” or “BNCF” command). When the BNCF command is given to the debugger, a flag may be set in the interpreter of the virtual machine to which the debugger is attached. On encountering a new method or function call, the flag is examined by the interpreter to determine whether it should stop or break in that call. If the flag is set, the interpreter will stop; otherwise the interpreter proceeds.
Claims20
A method for implementing breakpoints in a computer-implemented debugger environment having a front-end system and a back-end system, the method comprising:
- detecting, by a computer system, a break on next called function (BNCF) command during execution of an application by a virtual machine running as part of the back-end system of the computer-implemented debugger environment;
- setting, by the computer system, a BNCF flag using the virtual machine upon detecting the BNCF command;
- detecting, by the computer system, an invoke command using the virtual machine during execution of the application and subsequent to detecting the BNCF command and the BNCF flag being set, the invoke command indicating invocation of a program method;
- and
- breaking, by the computer system, execution of the application using the virtual machine upon invoking the method and the BNCF flag being set.
A method for implementing breakpoints in a computer-implemented debugger environment having a front-end system and a back-end system, the method comprising:
- detecting, by a computer system, an invoke command indicating invocation of a program method during execution of an application comprising the method using a virtual machine running as part of the back-end system of the computer-implemented debugger environment;
- determining, by the computer system, whether a break on next called function (BNCF) flag was set during execution of the application by the virtual machine prior to detecting the invoke command;
- and
- when the BNCF flag was set during execution of the application by the virtual machine prior to detecting the invoke command, breaking, by the computer system, execution of the application by the virtual machine upon invoking the program method.
A computer-implemented debugging system comprising:
- a back-end computer subsystem configured to run a virtual machine, the virtual machine being configured to:
- execute an application comprising a plurality of program methods;
- detect an invoke command indicating invocation of one of the program methods during execution of the application;
- determine whether a break on next called function (BNCF) flag was set during execution of the application prior to detecting the invoke command;
- and
- break execution of the application upon invoking the one of the program methods when the BNCF flag was set during execution of the application by the virtual machine prior to detecting the invoke command.
Dependencies are inferred from the claim text.