您的位置:首頁技術文章
文章詳情頁

Java Runtime.getRuntime()。exec()調用數百次后失敗

瀏覽:69日期:2024-04-30 17:19:04
如何解決Java Runtime.getRuntime()。exec()調用數百次后失敗?

使用時,您應該明確關閉輸入/輸出流Runtime.getRuntime().exec。

Process p = null;try { p = Runtime.getRuntime().exec('ls -l'); //process output here p.waitFor();} finally { if (p != null) {p.getoutputStream().close();p.getInputStream().close();p.getErrorStream().close(); }}解決方法

我有一個執行Runtime.getRuntime()。exec(“ ls -l”);的Java程序。很多次,對于系統中的每個目錄一次。

我的測試系統有1000多個目錄和Runtime.getRuntime()。exec(“ ls -l”);似乎在480個目錄后出錯。我收到的錯誤消息是“運行exec()時出錯。命令:[ls,-l]工作目錄:空環境:空”。我猜它已經用完了一些必需的系統資源,或者是嗎?有什么方法可以處理所有目錄而不會出錯嗎?

來自答案的相對評論:

我應該澄清一下,我正在使用Android SDK的adb.exe。我想在不同的目錄上多次執行Runtime.getRuntime()。exec(“adb shell ls -l”)之類的東西。

標簽: java
相關文章:
国产综合久久一区二区三区