Detecting a stalled routine
First Claim
1. A method for detecting whether a routine has stalled, comprising the steps of:
- accessing existing code for a first routine;
automatically modifying said existing code to include new code; and
using said new code to determine if said first routine has stalled.
3 Assignments
0 Petitions
Accused Products
Abstract
A system is disclosed that can determine whether a routine is stalled. The system does not require the developer of the routine to add code for the purpose of detecting whether the routine is stalled. Furthermore, the system can be used to monitor various routines at different levels of granularity, such as at the thread level, method level, or other levels. One embodiment of the present invention allows a user to specify a method and an expected time frame. Code for that method is modified to add additional code that implements a timing mechanism. The timing mechanism is used to detect when a thread enters that method and does not return within an approximation of the expected time frame. Other embodiments are also within the scope of the present invention.
102 Citations
79 Claims
-
1. A method for detecting whether a routine has stalled, comprising the steps of:
-
accessing existing code for a first routine;
automatically modifying said existing code to include new code; and
using said new code to determine if said first routine has stalled. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
13. A method for detecting whether a routine has stalled, comprising the steps of:
-
receiving an indication that a particular routine is running, said particular routine is one of a plurality of routines that comprise a process; and
automatically determining whether said particular routine has stalled.
-
-
33. A method for detecting whether a thread has stalled, comprising the steps of:
-
receiving an indication that a particular thread is running; and
determining whether said particular thread has stalled. - View Dependent Claims (34, 35, 36, 37, 38, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51)
-
-
39. A method for detecting whether a method has stalled, comprising the steps of:
-
receiving an indication that a particular method is running; and
determining whether said method thread has stalled.
-
-
45. A method for detecting whether a routine has stalled, comprising the steps of:
-
receiving an indication that a first routine has started;
starting a timing mechanism in response to said indication that said first routine has started;
receiving an indication that said first routine has completed, if said first routine has completed;
stopping said timing mechanism in response to receiving said indication that said first routine has completed; and
reporting said first routine as stalled if said timing mechanism is not stopped prior to a determination that said timing mechanism is overdue.
-
-
52. One or more processor readable storage devices having processor readable code embodied on said processor readable storage devices, said processor readable code for programming one or more processors to perform a method comprising the steps of:
-
accessing existing code for a first routine;
automatically modifying said existing code to include new code; and
using said new code to determine if said first routine has stalled. - View Dependent Claims (53, 54, 55, 56, 57, 59, 60, 61, 62, 63)
-
-
58. An apparatus, comprising:
-
one or more storage devices; and
one or more processors in communication with said one or more storage devices, said one or more processors perform a method comprising the steps of;
accessing existing code for a first routine, automatically modifying said existing code to include new code, and using said new code to determine if said first routine has stalled.
-
-
64. One or more processor readable storage devices having processor readable code embodied on said processor readable storage devices, said processor readable code for programming one or more processors to perform a method comprising the steps of:
-
receiving an indication that a particular routine is running, said particular routine is one of a plurality of routines that comprise a process; and
automatically determining whether said particular routine has stalled. - View Dependent Claims (65, 66, 67, 68, 69, 70, 71)
-
-
72. An apparatus, comprising:
-
one or more storage devices; and
one or more processors in communication with said one or more storage devices, said one or more processors perform a method comprising the steps of;
receiving an indication that a particular routine is running, said particular routine is one of a plurality of routines that comprise a process, and automatically determining whether said particular routine has stalled. - View Dependent Claims (73, 74, 75, 76, 77, 78, 79)
-
Specification