Class MonitorInfo
java.lang.Object
java.lang.management.LockInfo
java.lang.management.MonitorInfo
This class represents information about objects locked via
a synchronized method or block.
- Since:
- 1.6
-
Constructor Summary
ConstructorsConstructorDescriptionMonitorInfo(String className, int identityHashCode, int stackDepth, StackTraceElement stackFrame) Creates a newMonitorInfoinstance. -
Method Summary
Modifier and TypeMethodDescriptionstatic MonitorInfofrom(CompositeData cd) Receives aCompositeDatarepresenting aMonitorInfoobject and attempts to return the rootMonitorInfoinstance.intReturns an integer which is the number of frames deep into the stack where the monitor locking took place.The completeStackTraceElementin which the monitor was locked.Methods declared in class LockInfo
getClassName, getIdentityHashCode, toStringModifier and TypeMethodDescriptionReturns the name of the lock object's class in fully qualified form (i.e. including the package prefix).intReturns the value of the associated lock object's identity hash codetoString()Provides callers with a string value that represents the associated lock.Methods declared in class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitModifier and TypeMethodDescriptionprotected Objectclone()Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.booleanCompares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.protected voidfinalize()Deprecated, for removal: This API element is subject to removal in a future version.May cause performance issues, deadlocks and hangs.getClass()Answers the unique instance of java.lang.Class which represents the class of the receiver.inthashCode()Answers an integer hash code for the receiver.final voidnotify()Causes one thread which iswaiting on the receiver to be made ready to run.final voidCauses all threads which arewaiting on the receiver to be made ready to run.final voidwait()Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated bynotifyornotifyAll).final voidwait(long time) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.final voidwait(long time, int frac) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.
-
Constructor Details
-
MonitorInfo
public MonitorInfo(String className, int identityHashCode, int stackDepth, StackTraceElement stackFrame) Creates a newMonitorInfoinstance.- Parameters:
className- the name (including the package prefix) of the associated monitor lock object's classidentityHashCode- the value of the associated monitor lock object's identity hash code. This amounts to the result of callingSystem.identityHashCode(Object)with the monitor lock object as the sole argument.stackDepth- the number of frames deep in the stack where the locking of the monitor took placestackFrame- the complete stack frame at which the locking of the monitor occurred- Throws:
IllegalArgumentException- if either of the following two conditions apply:- the supplied
stackFrameis non-nullyet the value ofstackDepthis less than zero - the supplied
stackFrameisnullyet the value ofstackDepthis zero or greater
- the supplied
-
-
Method Details
-
getLockedStackDepth
public int getLockedStackDepth()Returns an integer which is the number of frames deep into the stack where the monitor locking took place.- Returns:
- the number of frames into the stack trace at which point the monitor object locking too place
-
getLockedStackFrame
The completeStackTraceElementin which the monitor was locked.- Returns:
- the
StackTraceElementin which the associated monitor was locked
-
from
Receives aCompositeDatarepresenting aMonitorInfoobject and attempts to return the rootMonitorInfoinstance.- Parameters:
cd- aCompositeDatathat represents aMonitorInfo.- Returns:
- if
cdis non-null, returns a new instance ofMonitorInfo. Ifcdisnull, returnsnull. - Throws:
IllegalArgumentException- if argumentcddoes not correspond to aMonitorInfowith the expected attributes of aLockInfo-className(java.lang.String) andidentityHashCode(java.lang.Integer) - plus the following:lockedStackFrame(javax.management.openmbean.CompositeData)lockedStackDepth(java.lang.Integer)
lockedStackFrameattribute must correspond to ajava.lang.StackTraceElementwhich has the following attributes:moduleName(java.lang.String)moduleVersion(java.lang.String)className(java.lang.String)methodName(java.lang.String)fileName(java.lang.String)lineNumber(java.lang.Integer)nativeMethod(java.lang.Boolean)
-