Интерфейс MonitorContendedEnteredRequest
- Все суперинтерфейсы:
EventRequest, Mirror
public interface MonitorContendedEnteredRequest extends EventRequest
Запрос на уведомление о том, что поток в целевой виртуальной машине входит в монитор после ожидания его освобождения другим потоком. Когда удовлетворяется включённый MonitorContededEnteredRequest,
event set, содержащий MonitorContendedEnteredEvent, помещается в EventQueue. Коллекцией существующих MonitorContendedEnteredEvents управляет EventRequestManager
- Начиная с:
- 1.6
- См. также:
Краткое описание полей
Поля, объявленные в интерфейсе EventRequest
SUSPEND_ALL, SUSPEND_EVENT_THREAD, SUSPEND_NONE | Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
SUSPEND_ALL |
При возникновении события приостановить все потоки |
static final int |
SUSPEND_EVENT_THREAD |
При возникновении события приостановить только поток, вызвавший это событие |
static final int |
SUSPEND_NONE |
При возникновении события не приостанавливать потоки |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addClassExclusionFilter |
Ограничивает генерируемые этим запросом события теми, метод которых принадлежит классу, имя которого не соответствует этому ограниченному регулярному выражению, например |
void |
addClassFilter |
Ограничивает генерируемые этим запросом события теми, метод которых принадлежит указанному ссылочному типу или любому из его подтипов. |
void |
addClassFilter |
Ограничивает генерируемые этим запросом события теми, метод которых принадлежит классу, имя которого соответствует этому ограниченному регулярному выражению. |
void |
addInstanceFilter |
Ограничивает генерируемые этим запросом события теми, в которых текущий выполняющийся экземпляр ("this") является указанным объектом. |
void |
addThreadFilter |
Ограничивает генерируемые этим запросом события теми, которые происходят в указанном потоке. |
Методы, объявленные в интерфейсе EventRequest
addCountFilter, disable, enable, getProperty, isEnabled, putProperty, setEnabled, setSuspendPolicy, suspendPolicy | Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addCountFilter |
Ограничивает регистрацию запрошенного события так, чтобы оно сообщалось не более одного раза после заданного числа возникновений. |
void |
disable() |
То же, что и setEnabled(false). |
void |
enable() |
То же, что и setEnabled(true). |
Object |
getProperty |
Возвращает значение свойства с указанным ключом. |
boolean |
isEnabled() |
Определяет, включён ли в данный момент этот запрос события. |
void |
putProperty |
Добавляет к этому запросу произвольное свойство — пару «ключ/значение». |
void |
setEnabled |
Включает или отключает этот запрос события. |
void |
setSuspendPolicy |
Определяет, какие потоки следует приостановить при возникновении запрошенного события в целевой виртуальной машине. |
int |
suspendPolicy() |
Возвращает значение, описывающее, какие потоки следует приостановить при возникновении запрошенного события в целевой виртуальной машине. |
Методы, объявленные в интерфейсе Mirror
toString, virtualMachine | Модификатор и тип | Метод | Описание |
|---|---|---|
String |
toString() |
Возвращает строку с описанием этого зеркала |
VirtualMachine |
virtualMachine() |
Возвращает VirtualMachine, которому принадлежит это зеркало. |
Подробное описание методов
addThreadFilter
void addThreadFilter(ThreadReference thread)
Ограничивает генерируемые этим запросом события теми, которые происходят в указанном потоке.
- Параметры:
-
thread— поток, по которому выполняется фильтрация. - Исключения:
-
InvalidRequestStateException— если этот запрос в данный момент включён или был удалён. Фильтры можно добавлять только к отключённым запросам.
addClassFilter
void addClassFilter(ReferenceType refType)
Ограничивает генерируемые этим запросом события теми, метод которых принадлежит указанному ссылочному типу или любому из его подтипов. Событие будет генерироваться для любого местоположения в ссылочном типе, который можно безопасно привести к указанному ссылочному типу.
- Параметры:
-
refType— ссылочный тип, по которому выполняется фильтрация. - Исключения:
-
InvalidRequestStateException— если этот запрос в данный момент включён или был удалён. Фильтры можно добавлять только к отключённым запросам.
addClassFilter
void addClassFilter(String classPattern)
Ограничивает генерируемые этим запросом события теми, метод которых принадлежит классу, имя которого соответствует этому ограниченному регулярному выражению. Регулярные выражения ограничены точными совпадениями и шаблонами, начинающимися с «*» или заканчивающимися на «*»; например, "*.Foo" или "java.*".
- Параметры:
-
classPattern— строка шаблона для фильтрации. - Исключения:
-
InvalidRequestStateException— если этот запрос в данный момент включён или был удалён. Фильтры можно добавлять только к отключённым запросам.
addClassExclusionFilter
void addClassExclusionFilter(String classPattern)
Ограничивает генерируемые этим запросом события теми, метод которых принадлежит классу, имя которого не соответствует этому ограниченному регулярному выражению, например "java.*" или "*.Foo".
- Параметры:
-
classPattern— строка шаблона, используемого для фильтрации. - Исключения:
-
InvalidRequestStateException— если этот запрос в данный момент включён или был удалён. Фильтры можно добавлять только к отключённым запросам.
addInstanceFilter
void addInstanceFilter(ObjectReference instance)
Ограничивает генерируемые этим запросом события теми, в которых текущий выполняющийся экземпляр ("this") является указанным объектом.
Не все целевые системы поддерживают эту операцию. Используйте VirtualMachine.canUseInstanceFilters(), чтобы определить, поддерживается ли эта операция.
- Параметры:
-
instance— объект, который должен быть текущим экземпляром, чтобы пройти этот фильтр. - Исключения:
-
UnsupportedOperationException— если целевая виртуальная машина не поддерживает эту операцию. -
InvalidRequestStateException— если этот запрос в данный момент включён или был удалён. Фильтры можно добавлять только к отключённым запросам.
© 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.