java.lang.Object
jdk.jshell.execution.DirectExecutionControl
jdk.jshell.execution.RemoteExecutionControl
- すべての実装されたインタフェース:
AutoCloseable
,ExecutionControl
public class RemoteExecutionControl extends DirectExecutionControl implements ExecutionControl
リモート・エージェントは実行プロセス(メインのJShellプロセスとは別に)で実行されます。 このエージェントはメインのJShellプロセスからソケット上にコードをロードし、コードを実行し、その他のmisc、外部プロセスによって制御されるストップ・サポートを追加する
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)
指定されたデリゲートにローダー操作を委譲するインスタンスを作成します。 -
メソッドのサマリー
修飾子と型 メソッド 説明 static void
main(String[] args)
エージェントを起動し、コマンドライン引数で指定されたソケットを介してJShellコアに接続します。void
redefine(ExecutionControl.ClassBytecodes[] cbcs)
リモート・エンドでの処理の再定義は、再定義されたクラスの登録のみですクラス jdk.jshell.execution.DirectExecutionControlで宣言されたメソッド
classesRedefined, clientCodeEnter, clientCodeLeave, findClass, invoke, 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, stop, varValue
-
コンストラクタの詳細
-
RemoteExecutionControl
public RemoteExecutionControl(LoaderDelegate loaderDelegate)指定されたデリゲートにローダー操作を委譲するインスタンスを作成します。- パラメータ:
loaderDelegate
- デリゲートがロード・クラスを処理
-
RemoteExecutionControl
public RemoteExecutionControl()デフォルトのクラス・ローディングを使用してインスタンスを作成します。
-
-
メソッドの詳細
-
main
エージェントを起動し、コマンドライン引数で指定されたソケットを介してJShellコアに接続します。- パラメータ:
args
- 標準のコマンドライン引数、期待値はソケット番号だけの引数です- 例外:
Exception
- 予想外の例外
-
redefine
public void redefine(ExecutionControl.ClassBytecodes[] cbcs) throws ExecutionControl.ClassInstallException, ExecutionControl.NotImplementedException, ExecutionControl.EngineTerminationExceptionリモート・エンドでの処理の再定義は、再定義されたクラスの登録のみです- 定義:
- インタフェース
ExecutionControl
内のredefine
- パラメータ:
cbcs
- 再定義するクラス名とバイトコード- 例外:
ExecutionControl.ClassInstallException
- クラスを再定義する際に例外が発生しました。一部またはすべてが再定義されませんでしたExecutionControl.NotImplementedException
- 実装されていない場合ExecutionControl.EngineTerminationException
- 実行エンジンが終了しました
-