|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.lang.Process
public abstract class Process
ProcessBuilder.start()
メソッドと Runtime.exec
メソッドは、ネイティブなプロセスを作成し、Process
のサブクラスのインスタンスを返します。このインスタンスを使って、プロセスの制御や、プロセス情報の取得が行えます。Process
クラスは、プロセスからの入力、プロセスへの出力、プロセス完了の待機、プロセス終了状態の確認、およびプロセスの破棄 (終了) を実行するための各メソッドを提供します。
たとえば、ネイティブなウィンドウ処理プロセス、デーモンプロセス、Microsoft Windows 環境での Win16/DOS プロセス、あるいはシェルスクリプトといったプロセスです。作成されたサブプロセスは、自身の端末またはコンソールを持ちません。サブプロセスの標準入出力処理 (すなわち stdin、stdout、および stderr) は、3 つのストリーム (getOutputStream()
、getInputStream()
、getErrorStream()
) によって親プロセスにリダイレクトされます。親プロセスはこれらのストリームを使って、サブプロセスに入力を送ったり、サブプロセスからの出力を取得したりします。ネイティブなプラットフォームには標準入出力ストリームに使うバッファーのサイズが限られるものもあるので、サブプロセスの入力ストリームの書き込みあるいはストリーム出力の読み込みが失敗した場合、サブプロセスはブロックされるか、デッドロック状態になる可能性があります。
Process
オブジェクトへの参照がなくなった場合でも、サブプロセスは終了されず、非同期的に実行を続けます。
Process
オブジェクトが表すプロセスの実行については、Process
オブジェクトを所有する Java プロセスと非同期でなかったり、並行でなかったりしてもかまいません。
ProcessBuilder
,
Runtime.exec(String[], String[], File)
コンストラクタの概要 | |
---|---|
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
オブジェクトが表すプロセスの標準出力ストリームから渡されたデータを取得します。
実装にあたっての注意:入力ストリームのバッファー処理をお勧めします。
ProcessBuilder.redirectErrorStream()
public abstract InputStream getErrorStream()
Process
オブジェクトが表すプロセスのエラー出力ストリームから渡されたデータを取得します。
実装にあたっての注意:入力ストリームのバッファー処理をお勧めします。
ProcessBuilder.redirectErrorStream()
public abstract int waitFor() throws InterruptedException
Process
オブジェクトが表すプロセスが終了するまで現在のスレッドを待機させます。サブプロセスがすでに終了している場合、このメソッドはただちに復帰します。サブプロセスが終了していない場合、呼び出し側スレッドはサブプロセスが終了するまでブロックされます。
0
は正常終了を示す
InterruptedException
- 現在のスレッドが待機中にほかのスレッドによって割り込まれた場合、待機を終了して InterruptedException
がスローされるpublic abstract int exitValue()
Process
オブジェクトが表すサブプロセスの終了コード。0
は正常終了を示す
IllegalThreadStateException
- この Process
オブジェクトが表すサブプロセスがまだ終了していない場合public abstract void destroy()
Process
オブジェクトが表すサブプロセスは強制終了されます。
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。