|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object java.lang.Process
public abstract class Process
ProcessBuilder.start()
和 Runtime.exec
方法創建一個本機進程,並返回 Process
子類別的一個實例,該實例可用來控制進程並獲得相關資訊。Process
類別提供了執行從進程輸入、執行輸出到進程、等待進程完成、檢查進程的退出狀態以及銷毀(殺掉)進程的方法。
創建進程的方法可能無法針對某些本機平臺上的特定進程很好地工作,比如,本機視窗進程,守護進程,Microsoft Windows 上的 Win16/DOS 進程,或者 shell 文稿。創建的子進程沒有自己的終端或終端機。它的所有標準 io(即 stdin、stdout 和 stderr)操作都將通過三個串流 (getOutputStream()
、getInputStream()
和 getErrorStream()
) 重定向到父進程。父進程使用這些串流來提供到子進程的輸入和獲得從子進程的輸出。因為有些本機平臺僅針對標準輸入和輸出串流提供有限的緩衝區大小,如果讀寫子進程的輸出串流或輸入串流迅速出現失敗,則可能導致子進程阻塞,甚至產生死鎖。
當沒有 Process
物件的更多參考時,不是刪掉子進程,而是繼續非同步執行子進程。
對於帶有 Process
物件的 Java 進程,沒有必要非同步或共時執行由 Process
物件表示的進程。
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 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。