Интерфейс EventSet
- Все суперинтерфейсы:
Collection<Event>, Iterable<Event>, Mirror, Set<Event>
public interface EventSet extends Mirror, Set<Event>
VirtualMachine может создать несколько объектов Event. Например, для заданного Location может существовать несколько BreakpointRequest, или можно выполнить пошаговое выполнение до того же местоположения, что и BreakpointRequest. Эти объекты Event доставляются вместе в виде набора событий (EventSet). Для единообразия объекты Event всегда доставляются в виде набора событий. Наборы событий доставляются через EventQueue. Наборы событий нельзя изменять. При возникновении набора событий целевая ВМ могла быть приостановлена. Эти приостановки соответствуют suspend policy. Чтобы гарантировать соответствующие возобновления, рекомендуется, если это возможно, завершать обработку набора событий вызовом EventSet.resume().
Для событий, объединяемых в набор событий, действуют следующие ограничения:
- Всегда образуют отдельный набор:
- Только с другими событиями VMDeathEvent:
- Только с другими событиями ThreadStartEvent для той же нити:
- Только с другими событиями ThreadDeathEvent для той же нити:
- Только с другими событиями ClassPrepareEvent для того же класса:
- Только с другими событиями ClassUnloadEvent для того же класса:
- Только с другими событиями AccessWatchpointEvent для того же доступа к полю:
- Только с другими событиями ModificationWatchpointEvent для того же изменения поля:
- Только с другими событиями ExceptionEvent для того же возникновения исключения:
- Только с другими событиями MethodExitEvent для того же выхода из метода:
- Только с другими событиями входа в монитор при конкуренции за тот же объект монитора:
- Событие входа в монитор при конкуренции (Monitor Contended Enter Event)
- Только с другими событиями успешного входа в монитор после ожидания того же объекта монитора:
- Событие успешного входа в монитор после конкуренции (Monitor Contended Entered Event)
- Только с другими событиями ожидания того же объекта монитора:
- Событие ожидания монитора (Monitor Wait Event)
- Только с другими событиями завершения ожидания того же объекта монитора:
- Событие завершения ожидания монитора (Monitor Waited Event)
- Только с другими членами этой группы, находящимися в том же местоположении и в той же нити:
- Начиная с версии:
- 1.3
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
EventIterator |
eventIterator() |
Возвращает итератор, предназначенный для объектов Event. |
void |
resume() |
Возобновляет нити, приостановленные этим набором событий. |
int |
suspendPolicy() |
Возвращает политику приостановки нитей в целевой ВМ для этого набора событий. |
Методы, объявленные в интерфейсе Collection
parallelStream, removeIf, stream, toArray | Модификатор и тип | Метод | Описание |
|---|---|---|
default Stream |
parallelStream() |
Возвращает, возможно, параллельный Stream, источником которого является эта коллекция. |
default boolean |
removeIf |
Удаляет из этой коллекции все элементы, удовлетворяющие заданному предикату (необязательная операция). |
default Stream |
stream() |
Возвращает последовательный Stream, источником которого является эта коллекция. |
default <T> T[] |
toArray |
Возвращает массив, содержащий все элементы этой коллекции; для выделения возвращаемого массива используется предоставленная функция generator. |
Методы, объявленные в интерфейсе Iterable
forEach | Модификатор и тип | Метод | Описание |
|---|---|---|
default void |
forEach |
Выполняет заданное действие для каждого элемента Iterable, пока не будут обработаны все элементы или действие не вызовет исключение. |
Методы, объявленные в интерфейсе Mirror
toString, virtualMachine | Модификатор и тип | Метод | Описание |
|---|---|---|
String |
toString() |
Возвращает строку с описанием этого зеркала |
VirtualMachine |
virtualMachine() |
Возвращает VirtualMachine, к которой относится это зеркало. |
Методы, объявленные в интерфейсе Set
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, spliterator, toArray, toArray | Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
add |
Добавляет указанный элемент в это множество, если он еще не присутствует (необязательная операция). |
boolean |
addAll |
Добавляет в это множество все элементы указанной коллекции, которых в нем еще нет (необязательная операция). |
void |
clear() |
Удаляет из этого множества все элементы (необязательная операция). |
boolean |
contains |
Возвращает true, если это множество содержит указанный элемент. |
boolean |
containsAll |
Возвращает true, если это множество содержит все элементы указанной коллекции. |
boolean |
equals |
Сравнивает указанный объект с этим множеством на равенство. |
int |
hashCode() |
Возвращает значение хеш-кода этого множества. |
boolean |
isEmpty() |
Возвращает true, если это множество не содержит элементов. |
Iterator |
iterator() |
Возвращает итератор по элементам этого множества. |
boolean |
remove |
Удаляет указанный элемент из этого множества, если он присутствует (необязательная операция). |
boolean |
removeAll |
Удаляет из этого множества все элементы, содержащиеся в указанной коллекции (необязательная операция). |
boolean |
retainAll |
Оставляет в этом множестве только элементы, содержащиеся в указанной коллекции (необязательная операция). |
int |
size() |
Возвращает количество элементов в этом множестве (его мощность). |
default Spliterator |
spliterator() |
Создает Spliterator по элементам этого множества. |
Object[] |
toArray() |
Возвращает массив, содержащий все элементы этого множества. |
<T> T[] |
toArray |
Возвращает массив, содержащий все элементы этого множества; тип элементов возвращаемого массива во время выполнения совпадает с типом указанного массива. |
Подробное описание методов
suspendPolicy
int suspendPolicy()
EventRequest. В редких случаях политика приостановки может отличаться от запрошенного значения, если событие ClassPrepareEvent произошло в системной нити отладчика. Подробности см. в описании ClassPrepareEvent.thread().
- Возвращает:
- политику suspendPolicy, которая может иметь значение
SUSPEND_ALL,SUSPEND_EVENT_THREADилиSUSPEND_NONE.
eventIterator
EventIterator eventIterator()
Event.resume
void resume()
suspendPolicy() имеет значение EventRequest.SUSPEND_ALL, вызов этого метода эквивалентен вызову VirtualMachine.resume(). Если политика приостановки имеет значение EventRequest.SUSPEND_EVENT_THREAD, вызов этого метода для нити события эквивалентен вызову ThreadReference.resume(). В противном случае вызов этого метода ничего не делает.
© 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.