Java Runtime 類別中的 process.waitFor() 方法可能會因多種原因而無法傳回。
永無止境進程
通常,waitFor() 會因為執行的命令未終止而停止,這通常是由產生未讀取的輸出的進程引起的。這會導致死鎖,兩個進程都等待對方完成。
避免死鎖
要解決此死鎖,從進程的輸入流中持續讀取至關重要。這可以防止進程因緩衝區已滿而阻塞,並允許其繼續執行並最終終止。
其他資源
全面了解Runtime.exec( )陷阱與解決方法,請參考文章《當Runtime.exec() 不會時》:
[當Runtime.exec()不會](https://www.ibm.com/developerworks/java/library/j-whenexec/)
以上是為什麼我的 Java `process.waitFor()` 方法停止運作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!