我使用的ProcessBuilder如下執行某些命令。爲什麼我的程序在從BufferedReader讀取行時阻塞?在下面的行從響應</p> <pre><code>BufferedReader response = null; process = processBuilder.start(); response = new BufferedReader(new InputStreamReader(process.getInputStream())); </code></pre> <p>但是代碼塊,而讀取行:
while((line = response.readLine()) != null) {
/* some code here */
}
我做了一些谷歌,我發現,當readLine()沒有得到EOL然後它會阻止。
如何使其工作或解決該問題。
周圍的方式之一是,你可以讀取的字節,而((I = bufferreader.read(緩衝,我,100))!= -1){ // 做工作 } – Addict 2013-03-20 20:46:38
類似於:HTTP ://stackoverflow.com/questions/6792835/how-do-you-set-a-timeout-on-bufferedreader-and-printwriter-in-java-1-4 – user1697575 2013-03-20 20:48:44
感謝您的幫助。我會試試這個。 :) – 2013-03-20 21:07:58