socket.shutdownOutput()及TCP協(xié)議的問(wèn)題
在客戶(hù)端發(fā)送數(shù)據(jù)的代碼后為什么必須加上socket.shutdownOutput();//關(guān)閉socket輸出流但不斷開(kāi)連接;
不加的話會(huì)發(fā)生 Connection reset異常。
主要困惑在 代碼是一句句執(zhí)行的。寫(xiě)一句PrintWriter.write(),后面沒(méi)有發(fā)送數(shù)據(jù)的代碼,自然就是不發(fā)送數(shù)據(jù)了?為什么還要顯示指明socket.shutdownOutput();//關(guān)閉socket輸出流;這個(gè)跟TCP還是跟socket的原理有關(guān)系?
2017-07-24
估計(jì)是有關(guān)系,再加上占用資源什么的,應(yīng)該就是不關(guān)就讓你報(bào)異常