java.lang.Object
java.lang.management.LockInfo
java.lang.management.MonitorInfo
public class MonitorInfo extends LockInfo
Information about an object monitor lock. An object monitor is locked
when entering a synchronization block or method on that object.
MXBean Mapping
MonitorInfo
is mapped to a CompositeData
with attributes as specified in
the from
method.- Since:
- 1.6
-
Constructor Summary
Constructors Constructor Description MonitorInfo(String className, int identityHashCode, int stackDepth, StackTraceElement stackFrame)
Construct aMonitorInfo
object. -
Method Summary
Modifier and Type Method Description static MonitorInfo
from(CompositeData cd)
Returns aMonitorInfo
object represented by the givenCompositeData
.int
getLockedStackDepth()
Returns the depth in the stack trace where the object monitor was locked.StackTraceElement
getLockedStackFrame()
Returns the stack frame that locked the object monitor.
-
Constructor Details
-
MonitorInfo
public MonitorInfo(String className, int identityHashCode, int stackDepth, StackTraceElement stackFrame)Construct aMonitorInfo
object.- Parameters:
className
- the fully qualified name of the class of the lock object.identityHashCode
- theidentity hash code
of the lock object.stackDepth
- the depth in the stack trace where the object monitor was locked.stackFrame
- the stack frame that locked the object monitor.- Throws:
IllegalArgumentException
- ifstackDepth
≥ 0 butstackFrame
isnull
, orstackDepth
< 0 butstackFrame
is notnull
.
-
-
Method Details
-
getLockedStackDepth
public int getLockedStackDepth()Returns the depth in the stack trace where the object monitor was locked. The depth is the index to theStackTraceElement
array returned in theThreadInfo.getStackTrace()
method.- Returns:
- the depth in the stack trace where the object monitor was locked, or a negative number if not available.
-
getLockedStackFrame
Returns the stack frame that locked the object monitor.- Returns:
StackTraceElement
that locked the object monitor, ornull
if not available.
-
from
Returns aMonitorInfo
object represented by the givenCompositeData
. The givenCompositeData
must contain the following attributes as well as the attributes specified in the mapped type for theLockInfo
class:Attribute Name Type lockedStackFrame CompositeData
forStackTraceElement
as specified inThreadInfo.from(CompositeData)
method.lockedStackDepth java.lang.Integer
- Parameters:
cd
-CompositeData
representing aMonitorInfo
- Returns:
- a
MonitorInfo
object represented bycd
ifcd
is notnull
;null
otherwise. - Throws:
IllegalArgumentException
- ifcd
does not represent aMonitorInfo
with the attributes described above.
-