前のトピック: RemoteTarget.abort メソッド次のトピック: RemoteTarget.destroyRemoteContext メソッド


RemoteTarget.createRemoteContext メソッド

デフォルトでは、RemoteTarget オブジェクトでコマンドが実行されるたびに新しい Autoshell セッションが新規作成されます。 同じターゲット上で複数のコマンドを実行する場合、永続的な単一のセッションを使用して複数のスクリプトを実行することをお勧めします。 また、永続的なセッションでは状態が保持されます。 たとえば、ある実行で作成された変数をその後の評価でも使用できます。

RemoteTarget オブジェクト上で createRemoteContext() を呼び出すと、リモート システム上に Autoshell セッションが新規作成されます。その後、destroyRemoteContext() が呼び出されるか RemoteTarget オブジェクトが回収されるまで、オープンな状態が維持されます。 コンテキストが存在するときに createRemoteContext() を呼び出すと、既存のコンテキストを破棄して新しいコンテキストが作成されます。

このメソッドの構文は以下のとおりです。

createRemoteContext()

このメソッドは以下のいずれかのエラー コードを返します。

RemoteTarget.REM_ERR_NONE

成功を示します。

RemoteTarget.REM_ERR_CON

ホストが不明であるなど、接続エラーを示します。

RemoteTarget.REM_ERR_AUTH

認証エラーを示します。

永続的なセッションを作成し、最初の評価で変数を定義して、2 回目の評価でその変数を取得します。

rt=new RemoteTarget("ascli1");
if(rt.createRemoteContext()==RemoteTarget.REM_ERR_NONE)
{
    run-remote x=42 on rt
    run-remote x on rt -wait
    ? get-remoteResult(rt)  // 42
    rt.destroyRemoteContext();
    ? get-remoteResult(rt)  // 空
}
else
{
    ? "エラーが発生しました。";
}

関連項目

RemoteTarget.destroyRemoteContext メソッド