Process 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
和ProcessBuilder#start()
Runtime#exec(String[],String[],File) Runtime.exec
方法會建立原生進程,並傳回 子類別 Process
的實例,可用來控制進程並取得其相關信息。
[Android.Runtime.Register("java/lang/Process", DoNotGenerateAcw=true)]
public abstract class Process : Java.Lang.Object
[<Android.Runtime.Register("java/lang/Process", DoNotGenerateAcw=true)>]
type Process = class
inherit Object
- 繼承
- 屬性
備註
ProcessBuilder#start()
和 Runtime#exec(String[],String[],File) Runtime.exec
方法會建立原生進程,並傳回 子類別Process
的實例,可用來控制進程並取得其相關信息。 類別 Process
提供方法來執行處理程式的輸入、執行進程的輸出、等待進程完成、檢查進程的結束狀態,以及終結進程(終止)進程。
在某些原生平臺上建立進程的方法可能無法正常運作,例如原生窗口處理程式、精靈進程、Microsoft Windows 上的 Win16/DOS 進程或殼層腳本。
根據預設,建立的子進程沒有自己的終端機或控制台。 其所有標準 I/O (亦即 stdin、stdout、stderr) 作業都會重新導向至父進程,您可以在其中透過使用 方法 #getOutputStream()
、 #getInputStream()
和 #getErrorStream()
取得的數據流來存取它們。 父進程會使用這些數據流來提供輸入,並從子進程取得輸出。 由於某些原生平臺只為標準輸入和輸出數據流提供有限的緩衝區大小,因此無法立即寫入輸入數據流或讀取子處理的輸出數據流,可能會導致子進程封鎖,甚至死結。
如有需要,您也可以使用 類別的方法 ProcessBuilder
重新導向子進程 I/O。
當物件不再參考 Process
時,子進程不會終止,而是轉包處理會以異步方式繼續執行。
就擁有Process
物件的 Java 進程而言,不需要以異步或並行方式執行物件Process
所代表的進程。
從 1.5 開始, ProcessBuilder#start()
是建立 Process
的慣用方法。
已在 JDK1.0 中新增。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
建構函式
Process() | |
Process(IntPtr, JniHandleOwnership) |
建立 JNI 物件的 Managed 表示法時使用的建構函式;由運行時間呼叫。 |
屬性
Class |
傳回這個 |
ErrorStream |
傳回與這個物件所表示之原生進程之錯誤數據流 (stderr) 連接的輸入數據流。 |
Handle |
基礎Android實例的句柄。 (繼承來源 Object) |
InputStream |
傳回連接到這個物件所表示之原生進程的標準輸出數據流 (stdout) 的輸入數據流。 |
IsAlive |
測試這個 |
JniIdentityHashCode |
和 |
JniPeerMembers |
和 |
OutputStream |
傳回輸出數據流,此數據流會連接到這個 物件所表示之原生進程的標準輸入數據流 (stdin )。 |
PeerReference |
和 |
ThresholdClass |
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 |
ThresholdType |
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 |
方法
Clone() |
建立並傳回這個 對象的複本。 (繼承來源 Object) |
Destroy() |
終止轉包處理。 |
DestroyForcibly() |
終止轉包處理。 |
Dispose() |
和 |
Dispose(Boolean) |
和 |
Equals(Object) |
指出其他物件是否「等於」這個物件。 (繼承來源 Object) |
ExitValue() |
傳回子進程結束值。 |
GetHashCode() |
傳回此物件的雜湊碼值。 (繼承來源 Object) |
JavaFinalize() |
當垃圾收集決定不再參考物件時,垃圾收集行程在 物件上呼叫。 (繼承來源 Object) |
Notify() |
喚醒正在等候此物件監視器的單一線程。 (繼承來源 Object) |
NotifyAll() |
喚醒正在等候此物件監視器的所有線程。 (繼承來源 Object) |
SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
ToArray<T>() |
和 |
ToString() |
傳回物件的字串表示。 (繼承來源 Object) |
UnregisterFromRuntime() |
和 |
Wait() |
讓目前線程等候直到喚醒為止,通常是藉由em <notified/em>或<em>interrupted</em> 來喚醒它。<> (繼承來源 Object) |
Wait(Int64) |
讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。 (繼承來源 Object) |
Wait(Int64, Int32) |
讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。 (繼承來源 Object) |
WaitFor() |
造成目前的線程在必要時等候,直到這個 |
WaitFor(Int64, TimeUnit) |
必要時,讓目前的線程等候,直到這個 |
WaitForAsync() |
和 |
WaitForAsync(Int64, TimeUnit) |
和 |
明確介面實作
IJavaPeerable.Disposed() |
和 |
IJavaPeerable.DisposeUnlessReferenced() |
和 |
IJavaPeerable.Finalized() |
和 |
IJavaPeerable.JniManagedPeerState |
和 |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
和 |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
和 |
IJavaPeerable.SetPeerReference(JniObjectReference) |
和 |
擴充方法
JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
JavaCast<TResult>(IJavaObject) |
和 |
GetJniTypeName(IJavaPeerable) |
和 |