Spec-Zone.ru › OpenJDK 27

Класс JdiDefaultExecutionControl

java.lang.Object
jdk.jshell.execution.StreamingExecutionControl
jdk.jshell.execution.JdiExecutionControl
jdk.jshell.execution.JdiDefaultExecutionControl
Все реализованные интерфейсы:
AutoCloseable, ExecutionControl
public class JdiDefaultExecutionControl extends JdiExecutionControl
Реализация ExecutionControl, используемая JShell-core по умолчанию. Запускает удалённый процесс — «удалённый агент». Взаимодействует с удалённым агентом через сокет и посредством JDI. Предназначена для работы с RemoteExecutionControl.
Начиная с:
9

Краткое описание вложенных классов

Модификатор и тип Класс Описание
static interface  JdiDefaultExecutionControl.JdiStarter
Запускает внешний процесс, в котором могут выполняться фрагменты кода пользователя.

Вложенные классы/интерфейсы, объявленные в интерфейсе ExecutionControl

ExecutionControl.ClassBytecodes, ExecutionControl.ClassInstallException, ExecutionControl.EngineTerminationException, ExecutionControl.ExecutionControlException, ExecutionControl.InternalException, ExecutionControl.NotImplementedException, ExecutionControl.ResolutionException, ExecutionControl.RunException, ExecutionControl.StoppedException, ExecutionControl.UserException
Модификатор и тип Интерфейс Описание
static final class  ExecutionControl.ClassBytecodes
Объединяет имя класса с байт-кодом класса.
static class  ExecutionControl.ClassInstallException
При установке класса (загрузке или переопределении) возникла проблема.
static class  ExecutionControl.EngineTerminationException
Произошло неожиданное завершение механизма выполнения.
static class  ExecutionControl.ExecutionControlException
Абстрактный базовый класс всех исключений ExecutionControl.
static class  ExecutionControl.InternalException
Возникла внутренняя проблема.
static class  ExecutionControl.NotImplementedException
Команда не реализована.
static class  ExecutionControl.ResolutionException
Исключение, указывающее, что обнаружен DeclarationSnippet с неразрешёнными ссылками.
static class  ExecutionControl.RunException
Абстрактный базовый класс исключений, связанных с выполнением пользовательского кода.
static class  ExecutionControl.StoppedException
Исключение, указывающее, что ExecutionControl.invoke(java.lang.String, java.lang.String) (или, теоретически, ExecutionControl.varValue(java.lang.String, java.lang.String)) было прервано вызовом ExecutionControl.stop().
static class  ExecutionControl.UserException
Произошло обычное пользовательское исключение.

Краткое описание методов

Модификатор и тип Метод Описание
String invoke(String classname, String methodname)
Выполняет исполняемый фрагмент кода, вызывая метод указанного класса-обёртки.
void stop()
Прерывает выполняющийся удалённый вызов, изменяя удалённые переменные и отправляя команду остановки через JDI.
protected VirtualMachine vm()
Возвращает экземпляр JDI VirtualMachine.

Методы, объявленные в классе JdiExecutionControl

redefine, referenceType
Модификатор и тип Метод Описание
void redefine(ExecutionControl.ClassBytecodes[] cbcs)
Переопределяет указанные классы.
protected ReferenceType referenceType(VirtualMachine vm, String name)
Возвращает тип JDI ReferenceType, соответствующий указанному имени класса.

Методы, объявленные в классе StreamingExecutionControl

addToClasspath, close, extensionCommand, load, varValue
Модификатор и тип Метод Описание
void addToClasspath(String path)
Добавляет путь к пути классов выполнения.
void close()
Закрывает механизм выполнения.
Object extensionCommand(String command, Object arg)
Выполняет нестандартную команду (или стандартную команду из более новой версии).
void load(ExecutionControl.ClassBytecodes[] cbcs)
Пытается загрузить новые классы.
String varValue(String classname, String varname)
Возвращает значение переменной.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект какому-либо другому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии.
Финализация объявлена устаревшей и может быть удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает значение хеш-кода для этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно вследствие уведомления или прерывания.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно вследствие уведомления или прерывания, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно вследствие уведомления или прерывания, либо до истечения заданного промежутка реального времени.

Подробное описание методов

invoke

public String invoke(String classname, String methodname) throws ExecutionControl.RunException, ExecutionControl.EngineTerminationException, ExecutionControl.InternalException
Описание скопировано из интерфейса: ExecutionControl
Выполняет исполняемый фрагмент кода, вызывая метод указанного класса-обёртки. Метод не должен принимать аргументы и должен возвращать String.
Определено в:
invoke в интерфейсе ExecutionControl
Переопределяет:
invoke в классе StreamingExecutionControl
Параметры:
classname — класс, метод которого следует вызвать
methodname — имя вызываемого метода
Возвращает:
результат выполнения или null, если результат отсутствует
Выбрасывает:
ExecutionControl.UserException — при возникновении пользовательского исключения во время вызова
ExecutionControl.ResolutionException — если при вызове была предпринята прямая или косвенная попытка вызвать неразрешённый фрагмент кода
ExecutionControl.StoppedException — если invoke() был отменён вызовом ExecutionControl.stop()
ExecutionControl.EngineTerminationException — механизм выполнения завершил работу
ExecutionControl.InternalException — возникла внутренняя проблема
ExecutionControl.RunException

stop

public void stop() throws ExecutionControl.EngineTerminationException, ExecutionControl.InternalException
Прерывает выполняющийся удалённый вызов, изменяя удалённые переменные и отправляя команду остановки через JDI.
Выбрасывает:
ExecutionControl.EngineTerminationException — механизм выполнения завершил работу
ExecutionControl.InternalException — возникла внутренняя проблема

vm

protected VirtualMachine vm() throws ExecutionControl.EngineTerminationException
Описание скопировано из класса: JdiExecutionControl
Возвращает экземпляр JDI VirtualMachine.
Определено в:
vm в классе JdiExecutionControl
Возвращает:
виртуальная машина
Выбрасывает:
ExecutionControl.EngineTerminationException — если виртуальная машина завершила работу или отключена

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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