com.sun.jdi

## Interface MonitorInfo

- All Superinterfaces:
    Mirror

      public interface MonitorInfo
      extends Mirror

  Information about a monitor owned by a thread.
  Since:
    1.6

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `ObjectReference` | `monitor()` Returns the `ObjectReference` object for the monitor.
    `int` | `stackDepth()` Returns the stack depth at which this monitor was acquired by the owning thread.
    `ThreadReference` | `thread()` Returns a `ThreadReference` object for the thread that owns the monitor.

    - ### Methods inherited from interface com.sun.jdi.Mirror

      `toString, virtualMachine`

- - ### Method Detail

    - #### monitor

          ObjectReference monitor()

      Returns the `ObjectReference` object for the monitor.
      Returns:
        the `ObjectReference` object for the monitor.
      Throws:
        `InvalidStackFrameException` - if the associated stack frame has become invalid. Once the frame's thread is resumed, the stack frame is no longer valid.
      Since:
        1.6
      See Also:
        `ThreadReference.ownedMonitorsAndFrames()`

    - #### stackDepth

          int stackDepth()

      Returns the stack depth at which this monitor was acquired by the owning thread. Returns -1 if the implementation cannot determine the stack depth (e.g., for monitors acquired by JNI MonitorEnter).
      Returns:
        the stack depth at which this monitor was acquired by the owning thread.
      Throws:
        `InvalidStackFrameException` - if the associated stack frame has become invalid. Once the frame's thread is resumed, the stack frame is no longer valid.
      See Also:
        `ThreadReference.ownedMonitorsAndFrames()`

    - #### thread

          ThreadReference thread()

      Returns a `ThreadReference` object for the thread that owns the monitor.
      Returns:
        a `ThreadReference` object for the thread that owns the monitor.
      Throws:
        `InvalidStackFrameException` - if the associated stack frame has become invalid. Once the frame's thread is resumed, the stack frame is no longer valid.
      See Also:
        `ThreadReference.frame(int)`

Copyright © 1999, 2019, Oracle and/or its affiliates. All rights reserved.