文章詳情頁
Java Runtime.getRuntime()。exec()調用數百次后失敗
瀏覽:81日期: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
相關文章:
1. css - 如何把一個視圖放在左浮動定位的視圖的上面?2. python的正則怎么同時匹配兩個不同結果?3. php多任務倒計時求助4. javascript - axios請求回來的數據組件無法進行綁定渲染5. javascript - vue中怎么使用原生js插件6. MySQL的聯合查詢[union]有什么實際的用處7. javascript - jquery怎么讓a標簽跳轉后保持tab的樣式8. css - 子元素跑到父元素外面9. javascript - 小demo:請教怎么做出類似于水滴不斷擴張的效果?10. javascript - 請問下面代碼中的...是擴展運算符還是操作運算符?這樣寫是什么意思?
排行榜
