[英]How to solve Broken Pipe in Java?
從文件夾目錄中讀取文件時,我遇到了管道破裂的問題。 請通過我的以下代碼...
FileInputStream inputStream = new FileInputStream(file);
ServletOutputStream outputStream = response.getOutputStream();
IOUtils.copy(inputStream, outputStream);
IOUtils.closeQuietly(inputStream);
IOUtils.closeQuietly(outputStream);
在IOUtils.copy(inputStream,outputStream)中復制inputStream和outputStream時發生管道破裂。
我該如何解決斷管問題? 我可以使用PipedInputStream嗎? 這是處理此異常的正確方法。
這是由於寫入已被對等方關閉的連接引起的。
在這種情況下,對等方是Web瀏覽器或Web客戶端應用程序。
如果是前者,您將無能為力。 用戶可以隨時取消下載,這將導致管道異常。
在第二種情況下,客戶端應用程序可能出錯。
無論哪種情況,在服務器代碼中您都無能為力,只能記錄並忘記它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.