|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--java.lang.Process
Runtime.exec
メソッドは、ネイティブなプロセスを作成し、Process
のサブクラスのインスタンスを返します。このインスタンスを使って、プロセスの制御や、プロセス情報の取得が行えます。Process
クラスは、プロセスからの入力、プロセスへの出力、プロセス完了の待機、プロセス終了状態の確認、およびプロセスの破棄 (終了) を実行するための各メソッドを提供します。
Runtime.exec
の各メソッドは、特定のネイティブなプラットフォーム上の特殊なプロセスではうまく動作しない場合があります。たとえば、ネイティブなウィンドウ処理プロセス、デーモンプロセス、Win32 環境での Win16/DOS プロセス、あるいはシェルスクリプトといったプロセスです。作成されたサブプロセスは、自身の端末またはコンソールを持ちません。サブプロセスの標準入出力処理 (すなわち stdin、stdout、および stderr) は、3 つのストリーム (Process.getOutputStream()
、Process.getInputStream()
、Process.getErrorStream()
) によって親プロセスにリダイレクトされます。親プロセスはこれらのストリームを使って、サブプロセスに入力を送ったり、サブプロセスからの出力を取得したりします。ネイティブなプラットフォームには標準入出力ストリームに使うバッファのサイズが限られるものもあるので、サブプロセスの入力ストリームの書き込みあるいはストリーム出力の読み取りが失敗した場合、サブプロセスはブロックされるか、デッドロック状態になる可能性があります。
Process
オブジェクトへの参照がなくなった場合でも、サブプロセスは終了されず、非同期的に実行を続けます。
Process
オブジェクトが表すプロセスの実行については、Process
オブジェクトを所有する Java プロセスと非同期でなかったり、並行でなかったりしてもかまいません。
Runtime.exec(java.lang.String)
,
Runtime.exec(java.lang.String, java.lang.String[])
,
Runtime.exec(java.lang.String[])
,
Runtime.exec(java.lang.String[], java.lang.String[])
コンストラクタの概要 | |
Process()
|
メソッドの概要 | |
abstract void |
destroy()
サブプロセスを終了します。 |
abstract int |
exitValue()
サブプロセスの終了コードを返します。 |
abstract InputStream |
getErrorStream()
サブプロセスのエラーストリームを取得します。 |
abstract InputStream |
getInputStream()
サブプロセスの入力ストリームを取得します。 |
abstract OutputStream |
getOutputStream()
サブプロセスの出力ストリームを取得します。 |
abstract int |
waitFor()
必要な場合に、この Process オブジェクトが表すプロセスが終了するまで現在のスレッドを待機させます。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
public Process()
メソッドの詳細 |
public abstract OutputStream getOutputStream()
Process
オブジェクトが表すプロセスの標準入力ストリームに渡されます。
実装上の注意点: 出力ストリームのバッファ処理をお勧めします。
public abstract InputStream getInputStream()
Process
オブジェクトが表すプロセスの標準出力ストリームから渡されたデータを取得します。
実装上の注意点: 入力ストリームのバッファ処理をお勧めします。
public abstract InputStream getErrorStream()
Process
オブジェクトが表すプロセスのエラー出力ストリームから渡されたデータを取得します。
実装上の注意点: 入力ストリームのバッファ処理をお勧めします。
public abstract int waitFor() throws InterruptedException
Process
オブジェクトが表すプロセスが終了するまで現在のスレッドを待機させます。サブプロセスがすでに終了している場合、このメソッドはただちに復帰します。サブプロセスが終了していない場合、呼び出し元のスレッドはサブプロセスが終了するまでブロックされます。0
は正常終了を示すInterruptedException
- 現在のスレッドが待機中にほかのスレッドによって割り込まれた
場合、待機を終了して InterruptedException
がスローされるpublic abstract int exitValue()
Process
オブジェクトが表すサブプロセスの終了コード。0
は正常終了を示すIllegalThreadStateException
- この Process
オブジェクトが表すサブプロセスがまだ終了していない場合public abstract void destroy()
Process
オブジェクトが表すサブプロセスは強制終了されます。
|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.