クラス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(LoaderDelegate loaderDelegate) インスタンスを作成し、指定した委任にローダー操作を委任します。 -
メソッドのサマリー
修飾子と型メソッド説明protected voidユーザー・コードにエントリをマークします。static voidエージェントを起動し、コマンドライン引数で指定されたソケットを介してJShellコアに接続します。voidリモート・エンドでの処理の再定義は、再定義されたクラスの登録のみですvoidstop()実行中の呼出しを中断します。変数の値を返します。クラス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
-
redefine
public void redefine(ExecutionControl.ClassBytecodes[] cbcs) throws ExecutionControl.ClassInstallException, ExecutionControl.NotImplementedException, ExecutionControl.EngineTerminationException リモート・エンドでの処理の再定義は、再定義されたクラスの登録のみです- 定義:
- インタフェース
ExecutionControl内のredefine - パラメータ:
cbcs- 再定義するクラス名とバイトコード- スロー:
ExecutionControl.ClassInstallException- クラスの再定義中に例外が発生しました。一部またはすべてが再定義されませんでしたExecutionControl.NotImplementedException- 実装されていない場合ExecutionControl.EngineTerminationException- 実行エンジンが終了しました
-
stop
public void stop() throws ExecutionControl.EngineTerminationException, ExecutionControl.InternalExceptionクラス:DirectExecutionControlからコピーされた説明実行中の呼出しを中断します。サポートされていません。
- 定義:
- インタフェース
ExecutionControl内のstop - オーバーライド:
- クラス
DirectExecutionControlのstop - スロー:
ExecutionControl.EngineTerminationException- 実行エンジンが終了しましたExecutionControl.InternalException- 内部問題が発生しました
-
varValue
public String varValue(String className, String varName) throws ExecutionControl.RunException, ExecutionControl.EngineTerminationException, ExecutionControl.InternalException インタフェース:ExecutionControlからコピーされた説明変数の値を返します。- 定義:
- インタフェース
ExecutionControl内のvarValue - オーバーライド:
- クラス
DirectExecutionControlのvarValue - パラメータ:
className- 変数のラッパー・クラスの名前varName- 変数の名前- 戻り値:
- 変数の値
- スロー:
ExecutionControl.UserException- 値の書式設定によってユーザー例外が発生しましたExecutionControl.ResolutionException- 値をフォーマットすると、未解決のスニペットを直接的または間接的に呼び出そうとしましたExecutionControl.StoppedException- 値の書式設定がExecutionControl.stop()によって取消された場合ExecutionControl.EngineTerminationException- 実行エンジンが終了しましたExecutionControl.InternalException- 内部問題が発生しましたExecutionControl.RunException
-
clientCodeEnter
protected void clientCodeEnter()クラス:DirectExecutionControlからコピーされた説明ユーザー・コードにエントリをマークします。- オーバーライド:
- クラス
DirectExecutionControlのclientCodeEnter
-