Java Runtime.getRuntime()。exec()調(diào)用數(shù)百次后失敗
使用時,您應(yīng)該明確關(guān)閉輸入/輸出流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(); }}解決方法
我有一個執(zhí)行Runtime.getRuntime()。exec(“ ls -l”);的Java程序。很多次,對于系統(tǒng)中的每個目錄一次。
我的測試系統(tǒng)有1000多個目錄和Runtime.getRuntime()。exec(“ ls -l”);似乎在480個目錄后出錯。我收到的錯誤消息是“運行exec()時出錯。命令:[ls,-l]工作目錄:空環(huán)境:空”。我猜它已經(jīng)用完了一些必需的系統(tǒng)資源,或者是嗎?有什么方法可以處理所有目錄而不會出錯嗎?
來自答案的相對評論:
我應(yīng)該澄清一下,我正在使用Android SDK的adb.exe。我想在不同的目錄上多次執(zhí)行Runtime.getRuntime()。exec(“adb shell ls -l”)之類的東西。
相關(guān)文章:
1. docker-compose中volumes的問題2. mysql 一個sql 返回多個總數(shù)3. CSS3 畫如下圖形4. 在mac下出現(xiàn)了兩個docker環(huán)境5. 如何用筆記本上的apache做微信開發(fā)的服務(wù)器6. android - rxjava merge 返回Object對象數(shù)據(jù)如何緩存7. javascript - 螞蟻金服里的react Modal方法,是怎么把元素插入到頁面最后的8. python - Scrapy存在內(nèi)存泄漏的問題。9. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個是怎么回事????10. angular.js - ionic2 瀏覽器跨域問題
