Spec-Zone.ru › OpenJDK 21

Класс RemoteExecutionControl

java.lang.Object
jdk.jshell.execution.DirectExecutionControl
jdk.jshell.execution.RemoteExecutionControl
Все реализуемые интерфейсы:
AutoCloseable, ExecutionControl
public class RemoteExecutionControl extends DirectExecutionControl implements ExecutionControl
Удаленный агент выполняется в процессе выполнения (отдельно от основного процесса JShell). Этот агент загружает код через сокет из основного процесса JShell, выполняет код и выполняет другие вспомогательные действия. Специализация DirectExecutionControl, которая добавляет поддержку остановки, управляемой внешним процессом. Разработан для работы с JdiDefaultExecutionControl.
С:
9

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

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

ExecutionControl.ClassBytecodes, ExecutionControl.ClassInstallException, ExecutionControl.EngineTerminationException, ExecutionControl.ExecutionControlException, ExecutionControl.InternalException, ExecutionControl.NotImplementedException, ExecutionControl.ResolutionException, ExecutionControl.RunException, ExecutionControl.StoppedException, ExecutionControl.UserException

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

Конструктор Описание
RemoteExecutionControl()
Создаёт экземпляр, используя стандартную загрузку классов.
RemoteExecutionControl(LoaderDelegate loaderDelegate)
Создаёт экземпляр, делегируя операции загрузки указанному делегату.

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

Модификатор и тип Метод Описание
protected void clientCodeEnter()
Помечает вход в пользовательский код.
static void main(String[] args)
Запускает агент, подключаясь к JShell-ядру через сокет, указанный в аргументе командной строки.
void redefine(ExecutionControl.ClassBytecodes[] cbcs)
Переопределение обработки на удалённом конце заключается только в регистрации переопределённых классов
void stop()
Прерывает выполняемое вызов.
String varValue(String className, String varName)
Возвращает значение переменной.

Методы, объявленные в классе jdk.jshell.execution.DirectExecutionControl

addToClasspath, classesRedefined, clientCodeLeave, close, extensionCommand, findClass, invoke, invoke, load, stop, throwConvertedInvocationException, throwConvertedOtherException, valueString

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Методы, объявленные в интерфейсе jdk.jshell.spi.ExecutionControl

addToClasspath, close, extensionCommand, invoke, load

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

RemoteExecutionControl

public RemoteExecutionControl(LoaderDelegate loaderDelegate)
Создаёт экземпляр, делегируя операции загрузки указанному делегату.
Параметры:
loaderDelegate - делегат для обработки загрузки классов

RemoteExecutionControl

public RemoteExecutionControl()
Создаёт экземпляр, используя стандартную загрузку классов.

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

main

public static void main(String[] args) throws Exception
Запускает агент, подключаясь к JShell-ядру через сокет, указанный в аргументе командной строки.
Параметры:
args - стандартные аргументы командной строки, ожидается, что номер сокета — это единственный аргумент
Исключения:
Exception - любое непредвиденное исключение

redefine

public void redefine(ExecutionControl.ClassBytecodes[] cbcs) throws ExecutionControl.ClassInstallException, ExecutionControl.NotImplementedException, ExecutionControl.EngineTerminationException
Переопределение обработки на удалённом конце заключается только в регистрации переопределённых классов
Указано в:
redefine в интерфейсе ExecutionControl
Параметры:
cbcs - имя класса и байткоды для переопределения
Исключения:
ExecutionControl.ClassInstallException - исключение, возникшее при переопределении классов, некоторые или все не были переопределены
ExecutionControl.NotImplementedException - если не реализовано
ExecutionControl.EngineTerminationException - движок выполнения завершил работу

stop

public void stop() throws ExecutionControl.EngineTerminationException, ExecutionControl.InternalException
Описание скопировано из класса: DirectExecutionControl
Прерывает выполняемый вызов.

Не поддерживается.

Указано в:
stop в интерфейсе ExecutionControl
Переопределяет:
stop в классе DirectExecutionControl
Исключения:
ExecutionControl.EngineTerminationException - движок выполнения завершил работу
ExecutionControl.InternalException - произошла внутренняя проблема

varValue

public String varValue(String className, String varName) throws ExecutionControl.RunException, ExecutionControl.EngineTerminationException, ExecutionControl.InternalException
Описание скопировано из интерфейса: ExecutionControl
Возвращает значение переменной.
Указано в:
varValue в интерфейсе ExecutionControl
Переопределяет:
varValue в классе DirectExecutionControl
Параметры:
className - имя обертывающего класса переменной
varName - имя переменной
Возвращает:
значение переменной
Исключения:
ExecutionControl.UserException - форматирование значения вызвало пользовательское исключение
ExecutionControl.ResolutionException - форматирование значения попыталось напрямую или косвенно вызвать неразрешённый фрагмент
ExecutionControl.StoppedException - если форматирование значения было отменено методом ExecutionControl.stop()
ExecutionControl.EngineTerminationException - движок выполнения завершил работу
ExecutionControl.InternalException - произошла внутренняя проблема
ExecutionControl.RunException

clientCodeEnter

protected void clientCodeEnter()
Описание скопировано из класса: DirectExecutionControl
Помечает вход в пользовательский код.
Переопределяет:
clientCodeEnter в классе DirectExecutionControl

© 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.jshell/jdk/jshell/execution/RemoteExecutionControl.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API