Интерфейс ClassPrepareRequest
- Все суперинтерфейсы:
EventRequest, Mirror
public interface ClassPrepareRequest extends EventRequest
Запрос уведомления о подготовке класса в целевой виртуальной машине. Когда удовлетворяется включённый ClassPrepareRequest, объект
event set, содержащий ClassPrepareEvent, помещается в EventQueue. Коллекцией существующих ClassPrepareRequest управляет EventRequestManager Подготовка класса определена в спецификации виртуальной машины Java.
- Начиная с версии:
- 1.3
- См. также:
Краткое описание полей
Поля, объявленные в интерфейсе 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 |
addSourceNameFilter |
Ограничивает события, генерируемые этим запросом, подготовкой типов ссылок, для которых ограниченное регулярное выражение 'sourceNamePattern' соответствует одному из значений 'sourceNames' подготавливаемого типа ссылки. |
Методы, объявленные в интерфейсе 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, которому принадлежит это зеркало. |
Подробное описание методов
addClassFilter
void addClassFilter(ReferenceType refType)
Ограничивает события, генерируемые этим запросом, подготовкой указанного типа ссылки и всех его подтипов. Событие будет сгенерировано для любого подготовленного типа ссылки, который можно безопасно привести к указанному типу ссылки.
- Параметры:
-
refType— тип ссылки для фильтрации. - Исключения:
-
InvalidRequestStateException— если этот запрос в данный момент включён или был удалён. Фильтры можно добавлять только к отключённым запросам.
addClassFilter
void addClassFilter(String classPattern)
Ограничивает события, генерируемые этим запросом, подготовкой типов ссылок, имена которых соответствуют этому ограниченному регулярному выражению. Регулярные выражения допускают только точные совпадения и шаблоны, начинающиеся с '*' или заканчивающиеся на '*'; например, "*.Foo" или "java.*".
- Параметры:
-
classPattern— строка String с шаблоном для фильтрации. - Исключения:
-
InvalidRequestStateException— если этот запрос в данный момент включён или был удалён. Фильтры можно добавлять только к отключённым запросам.
addClassExclusionFilter
void addClassExclusionFilter(String classPattern)
Ограничивает события, генерируемые этим запросом, подготовкой типов ссылок, имена которых не соответствуют этому ограниченному регулярному выражению. Регулярные выражения допускают только точные совпадения и шаблоны, начинающиеся с '*' или заканчивающиеся на '*'; например, "*.Foo" или "java.*".
- Параметры:
-
classPattern— строка String с шаблоном для фильтрации. - Исключения:
-
InvalidRequestStateException— если этот запрос в данный момент включён или был удалён. Фильтры можно добавлять только к отключённым запросам.
addSourceNameFilter
void addSourceNameFilter(String sourceNamePattern)
Ограничивает события, генерируемые этим запросом, подготовкой типов ссылок, для которых ограниченное регулярное выражение 'sourceNamePattern' соответствует одному из значений 'sourceNames' подготавливаемого типа ссылки. То есть, если refType — это подготавливаемый ReferenceType, то в списке, возвращаемом refType.availableStrata(), существует хотя бы одна страта, назовём её 'someStratum', такая, что имя из списка, возвращаемого refType.sourceNames(someStratam), соответствует 'sourceNamePattern'. Регулярные выражения допускают только точные совпадения и шаблоны, начинающиеся с '*' или заканчивающиеся на '*'; например, "*.Foo" или "java.*".
Не все целевые системы поддерживают эту операцию. Используйте VirtualMachine.canUseSourceNameFilters(), чтобы определить, поддерживается ли эта операция.
- Параметры:
-
sourceNamePattern— строка с шаблоном для фильтрации. - Исключения:
-
UnsupportedOperationException— если целевая виртуальная машина не поддерживает эту операцию. -
InvalidRequestStateException— если этот запрос в данный момент включён или был удалён. Фильтры можно добавлять только к отключённым запросам. - Начиная с версии:
- 1.6
© 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.