EventSet (Java Debug Interface)

Overview | Package | Class | Use | Tree | Index | Help

Java Debug Interface

PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.sun.jdi.event
Interface EventSet

All Superinterfaces:
  Collection, Mirror, Set

public interface EventSet
extends Mirror, Set

Several `Event` objects may be created at a given time by the target `VirtualMachine`. For example, there may be more than one `BreakpointRequest` for a given `Location` or you might single step to the same location as a BreakpointRequest. These `Event` objects are delivered together as an EventSet. For uniformity, an EventSet is always used to deliver `Event` objects. EventSets are delivered by the `EventQueue`. EventSets are unmodifiable.

Associated with the issuance of an event set, suspensions may have occurred in the target VM. These suspensions correspond with the `suspend policy`. To assure matching resumes occur, it is recommended, where possible, to complete the processing of an event set with `EventSet.resume()`.

The events that are grouped in an EventSet are restricted in the following ways:

- Always singleton sets:
  - `VMStartEvent`
  - `VMDisconnectEvent`
- Only with other VMDeathEvents:
  - `VMDeathEvent`
- Only with other ThreadStartEvents for the same thread:
  - `ThreadStartEvent`
- Only with other ThreadDeathEvents for the same thread:
  - `ThreadDeathEvent`
- Only with other ClassPrepareEvents for the same class:
  - `ClassPrepareEvent`
- Only with other ClassUnloadEvents for the same class:
  - `ClassUnloadEvent`
- Only with other AccessWatchpointEvents for the same field access:
  - `AccessWatchpointEvent`
- Only with other ModificationWatchpointEvents for the same field modification:
  - `ModificationWatchpointEvent`
- Only with other ExceptionEvents for the same exception occurrance:
  - `ExceptionEvent`
- Only with other MethodExitEvents for the same method exit:
  - `MethodExitEvent`
- Only with other members of this group, at the same location and in the same thread:
  - `BreakpointEvent`
  - `StepEvent`
  - `MethodEntryEvent`

Since:
  1.3
See Also:
  `Event`, `EventQueue`

Method Summary
`EventIterator` | `eventIterator()` Return an iterator specific to `Event` objects.
`void` | `resume()` Resumes threads suspended by this event set.
`int` | `suspendPolicy()` Returns the policy used to suspend threads in the target VM for this event set.

Methods inherited from interface com.sun.jdi.Mirror
`toString, virtualMachine`

Methods inherited from interface java.util.Set
`add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray`

Method Detail

### suspendPolicy

    public int suspendPolicy()

  Returns the policy used to suspend threads in the target VM for this event set. This policy is selected from the suspend policies for each event's request; the target VM chooses the policy which suspends the most threads. The target VM suspends threads according to that policy and that policy is returned here. See `EventRequest` for the possible policy values.

  In rare cases, the suspend policy may differ from the requested value if a `ClassPrepareEvent` has occurred in a debugger system thread. See `ClassPrepareEvent.thread()` for details.

  Returns:
    the suspendPolicy which is either `SUSPEND_ALL`, `SUSPEND_EVENT_THREAD` or `SUSPEND_NONE`.

### eventIterator

    public EventIterator eventIterator()

  Return an iterator specific to `Event` objects.

### resume

    public void resume()

  Resumes threads suspended by this event set. If the `suspendPolicy()` is `EventRequest.SUSPEND_ALL`, a call to this method is equivalent to `VirtualMachine.resume()`. If the suspend policy is `EventRequest.SUSPEND_EVENT_THREAD`, a call to this method is equivalent to `ThreadReference.resume()` for the event thread. Otherwise, a call to this method is a no-op.

Overview | Package | Class | Use | Tree | Index | Help

Java Debug Interface

PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD