Module jdk.jdi
Package 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

Modifier and Type
Method
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 declared in interface com.sun.jdi.Mirror

`toString, virtualMachine`

## Method Details

### 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)`