Class MonitorInfo

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 a MonitorInfo object.
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns a MonitorInfo object represented by the given CompositeData.
    int
    Returns the depth in the stack trace where the object monitor was locked.
    Returns the stack frame that locked the object monitor.

    Methods declared in class LockInfo

    getClassName, getIdentityHashCode, toString
    Modifier and Type
    Method
    Description
    Returns the fully qualified name of the class of the lock object.
    int
    Returns the identity hash code of the lock object returned from the System.identityHashCode(Object) method.
    Returns a string representation of a lock.

    Methods declared in class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected Object
    Creates and returns a copy of this object.
    boolean
    Indicates whether some other object is "equal to" this one.
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    Finalization is deprecated and subject to removal in a future release.
    final Class<?>
    Returns the runtime class of this Object.
    int
    Returns a hash code value for this object.
    final void
    Wakes up a single thread that is waiting on this object's monitor.
    final void
    Wakes up all threads that are waiting on this object's monitor.
    final void
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
    final void
    wait(long timeoutMillis)
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
    final void
    wait(long timeoutMillis, int nanos)
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  • Constructor Details

    • MonitorInfo

      public MonitorInfo(String className, int identityHashCode, int stackDepth, StackTraceElement stackFrame)
      Construct a MonitorInfo object.
      Parameters:
      className - the fully qualified name of the class of the lock object.
      identityHashCode - the identity 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 - if stackDepth ≥ 0 but stackFrame is null, or stackDepth < 0 but stackFrame is not null.
  • 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 the StackTraceElement array returned in the ThreadInfo.getStackTrace() method.
      Returns:
      the depth in the stack trace where the object monitor was locked, or a negative number if not available.
    • getLockedStackFrame

      public StackTraceElement getLockedStackFrame()
      Returns the stack frame that locked the object monitor.
      Returns:
      StackTraceElement that locked the object monitor, or null if not available.
    • from

      public static MonitorInfo from(CompositeData cd)
      Returns a MonitorInfo object represented by the given CompositeData. The given CompositeData must contain the following attributes as well as the attributes specified in the mapped type for the LockInfo class:
      The attributes and their types the given CompositeData contains
      Attribute Name Type
      lockedStackFrame CompositeData for StackTraceElement as specified in ThreadInfo.from(CompositeData) method.
      lockedStackDepth java.lang.Integer
      Parameters:
      cd - CompositeData representing a MonitorInfo
      Returns:
      a MonitorInfo object represented by cd if cd is not null; null otherwise.
      Throws:
      IllegalArgumentException - if cd does not represent a MonitorInfo with the attributes described above.