# Uses of Interface
com.sun.jdi.ThreadReference

Packages that use ThreadReference
Package
Description
com.sun.jdi
This is the core package of the Java Debug Interface (JDI), it defines mirrors for values, types, and the target VirtualMachine itself - as well bootstrapping facilities.
com.sun.jdi.event
This package defines JDI events and event processing.
com.sun.jdi.request
This package is used to request that a JDI event be sent under specified conditions.

- ## Uses of ThreadReference in com.sun.jdi

  Methods in com.sun.jdi that return ThreadReference
  Modifier and Type
  Method
  Description
  `ThreadReference`
  ObjectReference.`owningThread()`
  Returns an `ThreadReference` for the thread, if any, which currently owns this object's monitor.
  `ThreadReference`
  MonitorInfo.`thread()`
  Returns a `ThreadReference` object for the thread that owns the monitor.
  `ThreadReference`
  StackFrame.`thread()`
  Returns the thread under which this frame's method is running.
  Methods in com.sun.jdi that return types with arguments of type ThreadReference
  Modifier and Type
  Method
  Description
  `List<ThreadReference>`
  VirtualMachine.`allThreads()`
  Returns a list of the live threads in the target VM.
  `List<ThreadReference>`
  ThreadGroupReference.`threads()`
  Returns a List containing a `ThreadReference` for each live platform thread in this thread group.
  `List<ThreadReference>`
  ObjectReference.`waitingThreads()`
  Returns a List containing a `ThreadReference` for each thread currently waiting for this object's monitor.
  Methods in com.sun.jdi with parameters of type ThreadReference
  Modifier and Type
  Method
  Description
  `Value`
  ClassType.`invokeMethod(ThreadReference thread, Method method, List<? extends Value> arguments, int options)`
  Invokes the specified static `Method` in the target VM.
  `default Value`
  InterfaceType.`invokeMethod(ThreadReference thread, Method method, List<? extends Value> arguments, int options)`
  Invokes the specified static `Method` in the target VM.
  `Value`
  ObjectReference.`invokeMethod(ThreadReference thread, Method method, List<? extends Value> arguments, int options)`
  Invokes the specified `Method` on this object in the target VM.
  `ObjectReference`
  ClassType.`newInstance(ThreadReference thread, Method method, List<? extends Value> arguments, int options)`
  Constructs a new instance of this type, using the given constructor `Method` in the target VM.

- ## Uses of ThreadReference in com.sun.jdi.event

  Methods in com.sun.jdi.event that return ThreadReference
  Modifier and Type
  Method
  Description
  `ThreadReference`
  ClassPrepareEvent.`thread()`
  Returns the thread in which this event has occurred.
  `ThreadReference`
  LocatableEvent.`thread()`
  Returns the thread in which this event has occurred.
  `ThreadReference`
  MonitorContendedEnteredEvent.`thread()`
  Returns the thread in which this event has occurred.
  `ThreadReference`
  MonitorContendedEnterEvent.`thread()`
  Returns the thread in which this event has occurred.
  `ThreadReference`
  MonitorWaitedEvent.`thread()`
  Returns the thread in which this event has occurred.
  `ThreadReference`
  MonitorWaitEvent.`thread()`
  Returns the thread in which monitor wait event has occurred.
  `ThreadReference`
  ThreadDeathEvent.`thread()`
  Returns the thread which is terminating.
  `ThreadReference`
  ThreadStartEvent.`thread()`
  Returns the thread which has started.
  `ThreadReference`
  VMStartEvent.`thread()`
  Returns the initial thread of the VM which has started.

- ## Uses of ThreadReference in com.sun.jdi.request

  Methods in com.sun.jdi.request that return ThreadReference
  Modifier and Type
  Method
  Description
  `ThreadReference`
  StepRequest.`thread()`
  Methods in com.sun.jdi.request with parameters of type ThreadReference
  Modifier and Type
  Method
  Description
  `void`
  BreakpointRequest.`addThreadFilter(ThreadReference thread)`
  Restricts the events generated by this request to those in the given thread.
  `void`
  ExceptionRequest.`addThreadFilter(ThreadReference thread)`
  Restricts the events generated by this request to those in the given thread.
  `void`
  MethodEntryRequest.`addThreadFilter(ThreadReference thread)`
  Restricts the events generated by this request to those in the given thread.
  `void`
  MethodExitRequest.`addThreadFilter(ThreadReference thread)`
  Restricts the events generated by this request to those in the given thread.
  `void`
  MonitorContendedEnteredRequest.`addThreadFilter(ThreadReference thread)`
  Restricts the events generated by this request to those in the given thread.
  `void`
  MonitorContendedEnterRequest.`addThreadFilter(ThreadReference thread)`
  Restricts the events generated by this request to those in the given thread.
  `void`
  MonitorWaitedRequest.`addThreadFilter(ThreadReference thread)`
  Restricts the events generated by this request to those in the given thread.
  `void`
  MonitorWaitRequest.`addThreadFilter(ThreadReference thread)`
  Restricts the events generated by this request to those in the given thread.
  `void`
  ThreadDeathRequest.`addThreadFilter(ThreadReference thread)`
  Restricts the events generated by this request to those in the given thread.
  `void`
  ThreadStartRequest.`addThreadFilter(ThreadReference thread)`
  Restricts the events generated by this request to those in the given thread.
  `void`
  WatchpointRequest.`addThreadFilter(ThreadReference thread)`
  Restricts the events generated by this request to those in the given thread.
  `StepRequest`
  EventRequestManager.`createStepRequest(ThreadReference thread, int size, int depth)`
  Creates a new disabled `StepRequest`.