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
リモート・エンドでの処理の再定義は、再定義されたクラスの登録のみですvoid
stop()
実行中の呼出しを中断します。変数の値を返します。クラス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
エージェントを起動し、コマンドライン引数で指定されたソケットを介して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
- 実行エンジンが終了しました
-
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
-