Интерфейс VirtualMachine
- Все суперинтерфейсы:
Mirror
- Все известные подинтерфейсы:
PathSearchingVirtualMachine
public interface VirtualMachine extends Mirror
mirror, представляющая составное состояние целевой ВМ. Все остальные зеркала связаны с экземпляром этого интерфейса. Доступ ко всем другим зеркалам осуществляется непосредственно или косвенно через экземпляр этого интерфейса. Доступ к глобальным свойствам ВМ и управление выполнением ВМ поддерживаются непосредственно этим интерфейсом. Экземпляры этого интерфейса создаются экземплярами Connector. Например, AttachingConnector подключается к целевой ВМ и возвращает зеркало виртуальной машины. Коннектор обычно создаёт VirtualMachine, вызывая метод VirtualMachineManager.createVirtualMachine(Connection) createVirtualMachine(Connection) менеджера виртуальных машин.
Обратите внимание, что целевая ВМ, запущенная запуском коннектора, не гарантируется как стабильная до получения VMStartEvent.
Любой метод в VirtualMachine который принимает VirtualMachine в качестве параметра, может выбросить VMDisconnectedException, если целевая ВМ отключена, и VMDisconnectEvent было или доступно для чтения из EventQueue.
Любой метод в VirtualMachine который принимает VirtualMachine в качестве параметра, может выбросить VMOutOfMemoryException, если целевая ВМ испытывает нехватку памяти.
- С:
- 1.3
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
TRACE_ALL |
Включено все трассирование. |
static final int |
TRACE_EVENTS |
Включено трассирование для обработки внутренних событий. |
static final int |
TRACE_NONE |
Выключено все трассирование. |
static final int |
TRACE_OBJREFS |
Включено трассирование для внутренней обработки ссылок на объекты. |
static final int |
TRACE_RECEIVES |
Включено трассирование для пакетов JDWP, полученных от целевой ВМ. |
static final int |
TRACE_REFTYPES |
Включено трассирование для внутренней обработки типов ссылок. |
static final int |
TRACE_SENDS |
Включено трассирование для пакетов JDWP, отправленных в целевую ВМ. |
Краткое описание методов
| Modifier and Type | Method | Description |
|---|---|---|
List |
allClasses() |
Возвращает все загруженные типы в целевой виртуальной машине. |
default List |
allModules() |
Возвращает все модули. |
List |
allThreads() |
Возвращает список активных потоков в целевой виртуальной машине. |
boolean |
canAddMethod() |
Устарело. JVM TI-базированный JDWP бэкенд никогда не установит это свойство в true. |
boolean |
canBeModified() |
Определяет, является ли целевая виртуальная машина виртуальной машиной только для чтения. |
boolean |
canForceEarlyReturn() |
Определяет, поддерживает ли целевая виртуальная машина принудительное раннее завершение метода. |
boolean |
canGetBytecodes() |
Определяет, поддерживает ли целевая виртуальная машина получение байткода метода. |
boolean |
canGetClassFileVersion() |
Определяет, поддерживает ли целевая виртуальная машина чтение основных и второстепенных версий файла класса. |
boolean |
canGetConstantPool() |
Определяет, поддерживает ли целевая виртуальная машина получение информации о константном пуле класса. |
boolean |
canGetCurrentContendedMonitor() |
Определяет, поддерживает ли целевая виртуальная машина получение монитора, на котором в данный момент ожидает поток. |
boolean |
canGetInstanceInfo() |
Определяет, поддерживает ли целевая виртуальная машина доступ к экземплярам классов, количеству экземпляров и ссылочным объектам. |
boolean |
canGetMethodReturnValues() |
Определяет, поддерживает ли целевая виртуальная машина включение возвращаемых значений в MethodExitEvents. |
default boolean |
canGetModuleInfo() |
Определяет, поддерживает ли целевая виртуальная машина получение информации о модулях. |
boolean |
canGetMonitorFrameInfo() |
Определяет, поддерживает ли целевая виртуальная машина получение кадра, который захватил монитор. |
boolean |
canGetMonitorInfo() |
Определяет, поддерживает ли целевая виртуальная машина получение информации о мониторе для объекта. |
boolean |
canGetOwnedMonitorInfo() |
Определяет, поддерживает ли целевая виртуальная машина получение мониторов, принадлежащих потоку. |
boolean |
canGetSourceDebugExtension() |
Определяет, поддерживает ли целевая виртуальная машина получение расширения отладки исходного кода. |
boolean |
canGetSyntheticAttribute() |
Определяет, поддерживает ли целевая виртуальная машина запрос синтетического атрибута метода или поля. |
boolean |
canPopFrames() |
Определяет, поддерживает ли целевая виртуальная машина удаление кадров из стека потока. |
boolean |
canRedefineClasses() |
Определяет, поддерживает ли целевая виртуальная машина любой уровень переопределения классов. |
boolean |
canRequestMonitorEvents() |
Определяет, поддерживает ли целевая виртуальная машина создание MonitorContendedEnterRequests. |
boolean |
canRequestVMDeathEvent() |
Определяет, поддерживает ли целевая виртуальная машина создание VMDeathRequests. |
boolean |
canUnrestrictedlyRedefineClasses() |
Устарело. JVM TI-базированный JDWP бэкенд никогда не установит это свойство в true. |
boolean |
canUseInstanceFilters() |
Определяет, поддерживает ли целевая виртуальная машина фильтрацию событий по конкретному объекту экземпляра. |
boolean |
canUseSourceNameFilters() |
Определяет, поддерживает ли целевая виртуальная машина фильтрацию событий подготовки классов по имени источника. |
boolean |
canWatchFieldAccess() |
Определяет, поддерживает ли целевая виртуальная машина точки останова для доступа к полям. |
boolean |
canWatchFieldModification() |
Определяет, поддерживает ли целевая виртуальная машина точки останова для изменения полей. |
List |
classesByName |
Возвращает загруженные типы ссылок, соответствующие заданному имени. |
String |
description() |
Возвращает текстовую информацию о целевой виртуальной машине и поддержке отладчика, которая её отражает. |
void |
dispose() |
Деактивирует это зеркало виртуальной машины. |
EventQueue |
eventQueue() |
Возвращает очередь событий для этой виртуальной машины. |
EventRequestManager |
eventRequestManager() |
Возвращает менеджер запросов событий для этой виртуальной машины. |
void |
exit |
Принуждает зеркальную виртуальную машину к завершению с заданным кодом ошибки. |
String |
getDefaultStratum() |
Возвращает стандартный слой этой виртуальной машины. |
long[] |
instanceCounts |
Возвращает количество экземпляров каждого типа ReferenceType в списке 'refTypes'. |
BooleanValue |
mirrorOf |
Создаёт BooleanValue для заданного значения. |
ByteValue |
mirrorOf |
Создаёт ByteValue для заданного значения. |
CharValue |
mirrorOf |
Создаёт CharValue для заданного значения. |
DoubleValue |
mirrorOf |
Создаёт DoubleValue для заданного значения. |
FloatValue |
mirrorOf |
Создаёт FloatValue для заданного значения. |
IntegerValue |
mirrorOf |
Создаёт IntegerValue для заданного значения. |
LongValue |
mirrorOf |
Создаёт LongValue для заданного значения. |
ShortValue |
mirrorOf |
Создаёт ShortValue для заданного значения. |
StringReference |
mirrorOf |
Создаёт строку в этой виртуальной машине. |
VoidValue |
mirrorOfVoid() |
Создаёт VoidValue. |
String |
name() |
Возвращает имя целевой виртуальной машины, полученное из свойства java.vm.name. |
Process |
process() |
Возвращает объект Process для этой виртуальной машины, если она запущена LaunchingConnector
|
void |
redefineClasses |
Все указанные классы переопределяются в соответствии с предоставленными определениями. |
void |
resume() |
Продолжает выполнение приложения, выполняющегося в этой виртуальной машине. |
void |
setDebugTraceMode |
Отслеживает действия, выполняемые реализацией com.sun.jdi. |
void |
setDefaultStratum |
Устанавливает стандартный слой этой виртуальной машины (см. Location для обсуждения слоёв). |
void |
suspend() |
Приостанавливает выполнение приложения, выполняющегося в этой виртуальной машине. |
List |
topLevelThreadGroups() |
Возвращает каждую группу потоков, у которой нет родителя. |
String |
version() |
Возвращает версию Java Runtime Environment в целевой виртуальной машине, полученную из свойства java.version. |
Методы, объявленные в интерфейсе com.sun.jdi.Mirror
toString, virtualMachine
Подробное описание полей
TRACE_NONE
static final int TRACE_NONE
- См. также:
TRACE_SENDS
static final int TRACE_SENDS
- См. также:
TRACE_RECEIVES
static final int TRACE_RECEIVES
- См. также:
TRACE_EVENTS
static final int TRACE_EVENTS
- См. также:
TRACE_REFTYPES
static final int TRACE_REFTYPES
- См. также:
TRACE_OBJREFS
static final int TRACE_OBJREFS
- См. также:
TRACE_ALL
static final int TRACE_ALL
- См. также:
Подробное описание методов
allModules
default List<ModuleReference> allModules()
ModuleReference. Не все целевые виртуальные машины поддерживают эту операцию. Используйте canGetModuleInfo(), чтобы определить, поддерживается ли операция.
- Требования к реализации:
- В реализации по умолчанию выбрасывается
UnsupportedOperationException. - Возвращает:
- список объектов
ModuleReference, каждый из которых отображает модуль в целевой виртуальной машине. - Исключения:
-
UnsupportedOperationException- если целевая виртуальная машина не поддерживает эту операцию. - С:
- 9
classesByName
List<ReferenceType> classesByName(String className)
ReferenceType для каждого класса или интерфейса, найденного с заданным именем. Поиск ограничен только загруженными классами; попытка загрузки класса с заданным именем не предпринимается. Возвращаемый список будет включать типы ссылок, загруженные по крайней мере до стадии подготовки, и типы (например, массивы), для которых подготовка не определена.
- Параметры:
-
className- имя класса/интерфейса для поиска - Возвращает:
- список объектов
ReferenceType, каждый из которых отображает тип в целевой виртуальной машине с заданным именем.
allClasses
List<ReferenceType> allClasses()
Возвращаемый список включает все типы ссылок, включая hidden classes or interfaces, загруженные по крайней мере до стадии подготовки, и типы (например, массивы), для которых подготовка не определена.
- Возвращает:
- список объектов
ReferenceType, каждый из которых отображает загруженный тип в целевой виртуальной машине. - См. также:
redefineClasses
void redefineClasses(Map<? extends ReferenceType,byte[]> classToBytes)
- их байткоды одинаковы, за исключением индексов в пуле констант, и
- ссылочные константы равны.
Method.isObsolete() вернёт true при вызове для одного из этих методов. Если требуется сбросить такой кадр, используйте ThreadReference.popFrames(StackFrame) для удаления старого устаревшего выполнения метода из стека. Новые вызовы переопределённых методов всегда будут вызывать новые версии. Эта функция не вызывает никакой инициализации, кроме той, которая произошла бы в соответствии со стандартными семантиками JVM. Другими словами, переопределение класса не приводит к выполнению его инициализаторов. Значения существующих статических переменных останутся прежними до вызова. Однако полностью неинициализированные (новые) статические переменные будут присвоены значение по умолчанию.
Если у переопределённого класса есть экземпляры, то все эти экземпляры будут иметь поля, определённые переопределённым классом по завершении вызова. Существующие поля сохранят свои предыдущие значения. Любые новые поля будут иметь значения по умолчанию; не выполняются инициализаторы экземпляров или конструкторы.
Нити не нужно приостанавливать.
Эта функция не генерирует никаких событий.
Все точки останова в переопределённых классах удаляются.
Не все целевые виртуальные машины поддерживают эту операцию. Используйте canRedefineClasses(), чтобы определить, поддерживается ли операция. Используйте canAddMethod(), чтобы определить, может ли переопределение добавить методы. Используйте canUnrestrictedlyRedefineClasses(), чтобы определить, может ли переопределение изменить схему, удалить методы, изменить иерархию классов и т.д.
- Параметры:
-
classToBytes- Карта изReferenceTypeв массив байтов. Байты представляют новое определение класса в формате файла класса виртуальной машины Java. - Исключения:
-
UnsupportedOperationException- если целевая виртуальная машина не поддерживает эту операцию.- Если
canRedefineClasses()ложно, любой вызов этого метода выбросит это исключение. - Если
canAddMethod()ложно, попытка добавить метод выбросит это исключение. - Если
canUnrestrictedlyRedefineClasses()ложно, любая попытка выполнить неподдерживаемые изменения файла класса, описанные в JVM TI RedefineClasses, выбросит это исключение.
- Если
-
NoClassDefFoundError- если байты не соответствуют типу ссылки (имена не совпадают). -
VerifyError- если «верификатор» обнаруживает, что класс, хотя и хорошо сформирован, содержит внутреннее противоречие или проблему безопасности. -
ClassFormatError- если байты не представляют собой допустимый класс. -
ClassCircularityError- если обнаружена цикличность при инициализации класса. -
UnsupportedClassVersionError- если номера основной и дополнительной версии в байтах не поддерживаются виртуальной машиной. -
VMCannotBeModifiedException- если VirtualMachine является только для чтения - см.canBeModified(). - С:
- 1.4
- См. также:
allThreads
List<ThreadReference> allThreads()
Возвращаемый список содержит ThreadReference для каждого активного платформенного потока в целевой виртуальной машине. Это включает платформенные потоки, созданные с помощью API java.lang.Thread и все собственные потоки, присоединенные к целевой виртуальной машине с помощью кода JNI.
Зависит от реализации, содержит ли список элементы для активных виртуальных потоков в целевой виртуальной машине. Целевая виртуальная машина может не возвращать никаких ссылок на виртуальные потоки, или она может быть настроена на возврат ссылки на некоторые или все виртуальные потоки. Инструменты, которые хотят отслеживать все виртуальные потоки, могут включить ThreadStartRequest и ThreadDeathRequest, чтобы получать уведомления о запуске и завершении виртуальных потоков.
- Возвращает:
- список объектов
ThreadReferenceдля потоков в целевой виртуальной машине
suspend
void suspend()
Приостановки как виртуальной машины, так и отдельных потоков учитываются. Прежде чем поток снова начнет работу, его необходимо возобновить (с помощью resume() или ThreadReference.resume()) столько же раз, сколько раз он был приостановлен.
- Исключения:
-
VMCannotBeModifiedException- если VirtualMachine доступен только для чтения - См. также:
resume
void resume()
ThreadReference.resume().- Исключения:
-
VMCannotBeModifiedException- если VirtualMachine доступен только для чтения - См. также:
topLevelThreadGroups
List<ThreadGroupReference> topLevelThreadGroups()
ThreadGroupReference помещается в возвращаемый список. Эта команда может использоваться в качестве первого шага при построении дерева (или деревьев) существующих групп потоков.
- Возвращает:
- список объектов
ThreadGroupReference, по одному для каждой группы потоков верхнего уровня.
eventQueue
EventQueue eventQueue()
EventQueue, этот метод будет возвращать один и тот же экземпляр при каждом вызове.- Возвращает:
- объект
EventQueueдля этой виртуальной машины. - Исключения:
-
VMCannotBeModifiedException- если VirtualMachine доступен только для чтения - см.canBeModified().
eventRequestManager
EventRequestManager eventRequestManager()
EventRequestManager управляет событиями, устанавливаемыми пользователем, такими как точки останова. Виртуальная машина имеет только один объект EventRequestManager, этот метод будет возвращать один и тот же экземпляр при каждом вызове.- Возвращает:
- объект
EventRequestManagerдля этой виртуальной машины. - Исключения:
-
VMCannotBeModifiedException- если VirtualMachine доступен только для чтения - см.canBeModified().
mirrorOf
BooleanValue mirrorOf(boolean value)
BooleanValue для заданного значения. Это значение может использоваться для установки и сравнения со значением, полученным из переменной или поля в этой виртуальной машине.- Параметры:
-
value- логическое значение, для которого необходимо создать значение - Возвращает:
- объект
BooleanValueдля заданного логического значения.
mirrorOf
ByteValue mirrorOf(byte value)
ByteValue для заданного значения. Это значение может использоваться для установки и сравнения со значением, полученным из переменной или поля в этой виртуальной машине.- Параметры:
-
value- байт, для которого необходимо создать значение - Возвращает:
- объект
ByteValueдля заданного байта.
mirrorOf
CharValue mirrorOf(char value)
CharValue для заданного значения. Это значение может использоваться для установки и сравнения со значением, полученным из переменной или поля в этой виртуальной машине.- Параметры:
-
value- символ, для которого необходимо создать значение - Возвращает:
- объект
CharValueдля заданного символа.
mirrorOf
ShortValue mirrorOf(short value)
ShortValue для заданного значения. Это значение может использоваться для установки и сравнения со значением, полученным из переменной или поля в этой виртуальной машине.- Параметры:
-
value- короткое целое число, для которого необходимо создать значение - Возвращает:
- объект
ShortValueдля заданного короткого целого числа.
mirrorOf
IntegerValue mirrorOf(int value)
IntegerValue для заданного значения. Это значение может использоваться для установки и сравнения со значением, полученным из переменной или поля в этой виртуальной машине.- Параметры:
-
value- целое число, для которого необходимо создать значение - Возвращает:
- объект
IntegerValueдля заданного целого числа.
mirrorOf
LongValue mirrorOf(long value)
LongValue для заданного значения. Это значение может использоваться для установки и сравнения со значением, полученным из переменной или поля в этой виртуальной машине.- Параметры:
-
value- длинное целое число, для которого необходимо создать значение - Возвращает:
- объект
LongValueдля заданного длинного целого числа.
mirrorOf
FloatValue mirrorOf(float value)
FloatValue для заданного значения. Это значение может использоваться для установки и сравнения со значением, полученным из переменной или поля в этой виртуальной машине.- Параметры:
-
value- число с плавающей точкой, для которого необходимо создать значение - Возвращает:
- объект
FloatValueдля заданного числа с плавающей точкой.
mirrorOf
DoubleValue mirrorOf(double value)
DoubleValue для заданного значения. Это значение может использоваться для установки и сравнения со значением, полученным из переменной или поля в этой виртуальной машине.- Параметры:
-
value- число с двойной точностью, для которого необходимо создать значение - Возвращает:
- объект
DoubleValueдля заданного числа с двойной точностью.
mirrorOf
StringReference mirrorOf(String value)
- Параметры:
-
value- строка, которая должна быть создана - Возвращает:
- объект
StringReference, который отражает вновь созданную строку в целевой виртуальной машине. - Исключения:
-
VMCannotBeModifiedException- если VirtualMachine доступен только для чтения - см.canBeModified().
mirrorOfVoid
VoidValue mirrorOfVoid()
VoidValue. Это значение может быть передано в ThreadReference.forceEarlyReturn(com.sun.jdi.Value), когда необходимо завершить метод void.- Возвращает:
- объект
VoidValue.
process
Process process()
Process для этой виртуальной машины, если она запущена с помощью LaunchingConnector
- Возвращает:
- объект
Processдля этой виртуальной машины или null, если она не была запущена с помощьюLaunchingConnector. - Исключения:
-
VMCannotBeModifiedException- если VirtualMachine является только для чтения - см.canBeModified().
dispose
void dispose()
- Все запросы событий отменяются.
- Все потоки, приостановленные с помощью
suspend()илиThreadReference.suspend(), возобновляются столько раз, сколько необходимо для их выполнения. - Сбор мусора снова разрешён во всех случаях, когда он был отключён с помощью
ObjectReference.disableCollection().
Ресурсы, происходящие из этой VirtualMachine (ObjectReferences, ReferenceTypes и т. д.), станут недопустимыми.
exit
void exit(int exitCode)
Потоки, выполняющиеся в отражённой ВМ, завершаются немедленно. Исключение thread death не выбрасывается, и блоки finally не выполняются.
- Параметры:
-
exitCode- код завершения для целевой ВМ. На некоторых платформах код завершения может быть усечён, например, до младших 8 бит. - Исключения:
-
VMCannotBeModifiedException- если VirtualMachine является только для чтения - см.canBeModified().
canWatchFieldModification
boolean canWatchFieldModification()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае.
canWatchFieldAccess
boolean canWatchFieldAccess()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае.
canGetBytecodes
boolean canGetBytecodes()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае.
canGetSyntheticAttribute
boolean canGetSyntheticAttribute()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае.
canGetOwnedMonitorInfo
boolean canGetOwnedMonitorInfo()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае.
canGetCurrentContendedMonitor
boolean canGetCurrentContendedMonitor()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае.
canGetMonitorInfo
boolean canGetMonitorInfo()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае.
canUseInstanceFilters
boolean canUseInstanceFilters()
BreakpointRequest.addInstanceFilter(com.sun.jdi.ObjectReference).- Возвращает:
-
trueесли функция поддерживается,falseв противном случае.
canRedefineClasses
boolean canRedefineClasses()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.4
- См. также:
canAddMethod
@Deprecated(since="15") boolean canAddMethod()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.4
- См. также:
canUnrestrictedlyRedefineClasses
@Deprecated(since="15") boolean canUnrestrictedlyRedefineClasses()
redefineClasses(java.util.Map<? extends com.sun.jdi.ReferenceType, byte[]>).- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.4
- См. также:
canPopFrames
boolean canPopFrames()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.4
- См. также:
canGetSourceDebugExtension
boolean canGetSourceDebugExtension()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.4
- См. также:
canRequestVMDeathEvent
boolean canRequestVMDeathEvent()
VMDeathRequest.- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.4
- См. также:
canGetMethodReturnValues
boolean canGetMethodReturnValues()
MethodExitEvent.- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.6
- См. также:
canGetInstanceInfo
boolean canGetInstanceInfo()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.6
- См. также:
canUseSourceNameFilters
boolean canUseSourceNameFilters()
ClassPrepareRequest.addSourceNameFilter(java.lang.String).- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.6
canForceEarlyReturn
boolean canForceEarlyReturn()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.6
- См. также:
canBeModified
boolean canBeModified()
VMCannotBeModifiedException.- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.5
canRequestMonitorEvents
boolean canRequestMonitorEvents()
MonitorContendedEnterRequest. MonitorContendedEnteredRequest. MonitorWaitRequest. MonitorWaitedRequest.- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.6
- См. также:
canGetMonitorFrameInfo
boolean canGetMonitorFrameInfo()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.6
- См. также:
canGetClassFileVersion
boolean canGetClassFileVersion()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.6
- См. также:
canGetConstantPool
boolean canGetConstantPool()
- Возвращает:
-
trueесли функция поддерживается,falseв противном случае. - С:
- 1.6
- См. также:
canGetModuleInfo
default boolean canGetModuleInfo()
- Требования к реализации:
- Умолчательная реализация возвращает
false. - Возвращает:
-
trueесли функция поддерживается,falseв противном случае - С:
- 9
- См. также:
setDefaultStratum
void setDefaultStratum(String stratum)
Location для обсуждения стратумов). Переопределяет значение по умолчанию для каждого класса, заданное в файле класса. Воздействует на запросы местоположения (например, Location.sourceName()) и границы строк, используемые при пошаговом выполнении.
- Параметры:
-
stratum- стратум, который нужно установить в качестве значения по умолчанию для виртуальной машины, или null для использования значений по умолчанию для каждого класса. - Исключения:
-
UnsupportedOperationException- если целевая виртуальная машина не поддерживает эту операцию. - С:
- 1.4
getDefaultStratum
String getDefaultStratum()
- Возвращает:
-
null(что означает, что следует использовать значение по умолчанию для каждого класса -ReferenceType.defaultStratum()- если значение по умолчанию для стратума не было установлено с помощьюsetDefaultStratum(String). - С:
- 1.4
- См. также:
instanceCounts
long[] instanceCounts(List<? extends ReferenceType> refTypes)
Не все целевые виртуальные машины поддерживают эту операцию. Используйте canGetInstanceInfo(), чтобы определить, поддерживается ли операция.
- Параметры:
-
refTypes- список объектовReferenceType, для которых необходимо получить количество. - Возвращает:
- массив
long, содержащий по одному элементу для каждого элемента в списке 'refTypes'. Элемент i массива содержит количество экземпляров в целевой виртуальной машине типа ReferenceType на позиции i в списке 'refTypes'. Если список 'refTypes' пуст, возвращается массив нулевой длины. Если какой-либо тип ReferenceType в refTypes был собран мусором, для его количества экземпляров возвращается ноль. - Исключения:
-
UnsupportedOperationException- если целевая виртуальная машина не поддерживает эту операцию - см.canGetInstanceInfo() -
NullPointerException- если список 'refTypes' имеет значение null. - С:
- 1.6
- См. также:
description
String description()
version(), VirtualMachineManager.majorInterfaceVersion() и VirtualMachineManager.minorInterfaceVersion()
- Возвращает:
- описание.
version
String version()
java.version. Для получения версии интерфейса JDI используйте VirtualMachineManager.majorInterfaceVersion() и VirtualMachineManager.minorInterfaceVersion()
- Возвращает:
- версия целевой виртуальной машины.
name
String name()
java.vm.name.- Возвращает:
- имя целевой виртуальной машины.
setDebugTraceMode
void setDebugTraceMode(int traceFlags)
Вывод зависит от реализации, и режим отслеживания может быть проигнорирован.
- Параметры:
-
traceFlags- определяет, какие виды отслеживания включить.
© 1993, 2023, 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.
https://docs.oracle.com/en/java/javase/21/docs/api/jdk.jdi/com/sun/jdi/VirtualMachine.html