Spec-Zone.ru › OpenJDK 25

Класс Util

java.lang.Object
jdk.jshell.execution.Util
public class Util extends Object
Различные вспомогательные методы для настройки реализаций ExecutionControl. В частности, реализаций с удалённым выполнением.
Начиная с версии:
9

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

Модификатор и тип Метод Описание
static void detectJdiExitEvent(VirtualMachine vm, Consumer<String> unbiddenExitHandler)
Отслеживает поток событий JDI на наличие VMDeathEvent и VMDisconnectEvent.
static void forwardExecutionControl(ExecutionControl ec, ObjectInput in, ObjectOutput out)
Перенаправляет команды из входного потока указанному экземпляру ExecutionControl, а затем передаёт ответы в выходной поток.
static void forwardExecutionControlAndIO(ExecutionControl ec, InputStream inStream, OutputStream outStream, Map<String, Consumer<OutputStream>> outputStreamMap, Map<String, Consumer<InputStream>> inputStreamMap)
Перенаправляет команды из входного потока указанному экземпляру ExecutionControl, а затем передаёт ответы в выходной поток.
static ExecutionControl remoteInputOutput(InputStream input, OutputStream output, Map<String, OutputStream> outputStreamMap, Map<String, InputStream> inputStreamMap, BiFunction<ObjectInput, ObjectOutput, ExecutionControl> factory)
Создаёт ExecutionControl для заданных пакетированных потоков ввода и вывода.

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

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

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

forwardExecutionControl

public static void forwardExecutionControl(ExecutionControl ec, ObjectInput in, ObjectOutput out)
Перенаправляет команды из входного потока указанному экземпляру ExecutionControl, а затем передаёт ответы в выходной поток.
Параметры:
ec — прямой экземпляр ExecutionControl для обработки команд
in — входной поток команд
out — выходной поток ответов на команды

forwardExecutionControlAndIO

public static void forwardExecutionControlAndIO(ExecutionControl ec, InputStream inStream, OutputStream outStream, Map<String, Consumer<OutputStream>> outputStreamMap, Map<String, Consumer<InputStream>> inputStreamMap) throws IOException
Перенаправляет команды из входного потока указанному экземпляру ExecutionControl, а затем передаёт ответы в выходной поток.
Параметры:
ec — прямой экземпляр ExecutionControl для обработки команд
inStream — поток, из которого создаётся входной поток команд
outStream — поток, который будет передавать указанные дополнительные каналы (например, System.out и System.err), а также выходной поток ответов на команды.
outputStreamMap — карта соответствий между именами дополнительных потоков для передачи и методами установки потоков. Имена, начинающиеся с '$', зарезервированы для внутреннего использования.
inputStreamMap — карта соответствий между именами дополнительных потоков для передачи и методами установки потоков. Имена, начинающиеся с '$', зарезервированы для внутреннего использования.
Выбрасывает:
IOException — если при использовании переданных потоков возникли ошибки

remoteInputOutput

public static ExecutionControl remoteInputOutput(InputStream input, OutputStream output, Map<String, OutputStream> outputStreamMap, Map<String, InputStream> inputStreamMap, BiFunction<ObjectInput, ObjectOutput, ExecutionControl> factory) throws IOException
Создаёт ExecutionControl для заданных пакетированных потоков ввода и вывода. Указанный InputStream распаковывается, а его содержимое передаётся в ObjectInput и указанные OutputStreams. ObjectOutput и значения, прочитанные из указанного InputStream, упаковываются и отправляются в указанный OutputStream.
Параметры:
input — пакетированный входной поток
output — пакетированный выходной поток
outputStreamMap — карта соответствий между именами потоков и выходными потоками для перенаправления. Имена, начинающиеся с '$', зарезервированы для внутреннего использования.
inputStreamMap — карта соответствий между именами потоков и входными потоками для перенаправления. Имена, начинающиеся с '$', зарезервированы для внутреннего использования.
factory — для создания ExecutionControl из ObjectInput и ObjectOutput.
Возвращает:
созданный ExecutionControl
Выбрасывает:
IOException — если при настройке потоков возникло исключение

detectJdiExitEvent

public static void detectJdiExitEvent(VirtualMachine vm, Consumer<String> unbiddenExitHandler)
Отслеживает поток событий JDI на наличие VMDeathEvent и VMDisconnectEvent. При обнаружении вызывает unbiddenExitHandler.
Параметры:
vm — виртуальная машина для проверки
unbiddenExitHandler — обработчик, который принимает информацию о завершении работы

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, 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.
https://docs.oracle.com/en/java/javase/25/docs/api/jdk.jshell/jdk/jshell/execution/Util.html

Spec-Zone.ru

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