Spec-Zone.ru › OpenJDK 27

Interface EventSet

All Superinterfaces:
Collection<Event>, Iterable<Event>, Mirror, Set<Event>
public interface EventSet extends Mirror, Set<Event>
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 occurrence:
    • ExceptionEvent
  • Only with other MethodExitEvents for the same method exit:
    • MethodExitEvent
  • Only with other Monitor contended enter events for the same monitor object:
    • Monitor Contended Enter Event
  • Only with other Monitor contended entered events for the same monitor object:
    • Monitor Contended Entered Event
  • Only with other Monitor wait events for the same monitor object:
    • Monitor Wait Event
  • Only with other Monitor waited events for the same monitor object:
    • Monitor Waited Event
  • 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

Modifier and Type Method Description
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 declared in interface Collection

parallelStream, removeIf, stream, toArray
Modifier and Type Method Description
default Stream<Event> parallelStream()
Returns a possibly parallel Stream with this collection as its source.
default boolean removeIf(Predicate<? super Event> filter)
Removes all of the elements of this collection that satisfy the given predicate (optional operation).
default Stream<Event> stream()
Returns a sequential Stream with this collection as its source.
default <T> T[] toArray(IntFunction<T[]> generator)
Returns an array containing all of the elements in this collection, using the provided generator function to allocate the returned array.

Methods declared in interface Iterable

forEach
Modifier and Type Method Description
default void forEach(Consumer<? super Event> action)
Performs the given action for each element of the Iterable until all elements have been processed or the action throws an exception.

Methods declared in interface Mirror

toString, virtualMachine
Modifier and Type Method Description
String toString()
Returns a String describing this mirror
VirtualMachine virtualMachine()
Gets the VirtualMachine to which this Mirror belongs.

Methods declared in interface Set

add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, spliterator, toArray, toArray
Modifier and Type Method Description
boolean add(Event e)
Adds the specified element to this set if it is not already present (optional operation).
boolean addAll(Collection<? extends Event> c)
Adds all of the elements in the specified collection to this set if they're not already present (optional operation).
void clear()
Removes all of the elements from this set (optional operation).
boolean contains(Object o)
Returns true if this set contains the specified element.
boolean containsAll(Collection<?> c)
Returns true if this set contains all of the elements of the specified collection.
boolean equals(Object o)
Compares the specified object with this set for equality.
int hashCode()
Returns the hash code value for this set.
boolean isEmpty()
Returns true if this set contains no elements.
Iterator<Event> iterator()
Returns an iterator over the elements in this set.
boolean remove(Object o)
Removes the specified element from this set if it is present (optional operation).
boolean removeAll(Collection<?> c)
Removes from this set all of its elements that are contained in the specified collection (optional operation).
boolean retainAll(Collection<?> c)
Retains only the elements in this set that are contained in the specified collection (optional operation).
int size()
Returns the number of elements in this set (its cardinality).
default Spliterator<Event> spliterator()
Creates a Spliterator over the elements in this set.
Object[] toArray()
Returns an array containing all of the elements in this set.
<T> T[] toArray(T[] a)
Returns an array containing all of the elements in this set; the runtime type of the returned array is that of the specified array.

Method Details

suspendPolicy

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

EventIterator eventIterator()
Return an iterator specific to Event objects.

resume

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.

Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples. Other versions.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2026, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API