如何去除socket的半關(guān)閉狀態(tài)
在代碼Client.java中我看到您用了socket.shutdownOutPut()使得客服端進(jìn)入了半關(guān)閉狀態(tài),那如果要進(jìn)行第二輪回通信,被關(guān)閉的輸出流怎么打開?求大神指點(diǎn)
在代碼Client.java中我看到您用了socket.shutdownOutPut()使得客服端進(jìn)入了半關(guān)閉狀態(tài),那如果要進(jìn)行第二輪回通信,被關(guān)閉的輸出流怎么打開?求大神指點(diǎn)
2015-10-31
舉報(bào)
2015-12-18
如果客戶端 shutdownOutput(),那就說明客戶端只是純監(jiān)聽服務(wù)器端的socket,這樣當(dāng)然服務(wù)器端因?yàn)槌瑫r(shí)斷開,客戶端也就只是斷開而已,不會(huì)有異常。
如果不加入,那客戶端繼續(xù)會(huì)維持連接去服務(wù)器端,這樣如果服務(wù)器超時(shí)斷開,客戶端就無法繼續(xù)連到服務(wù)器,也就有異常出現(xiàn)了。我也出現(xiàn)過,記得是?java.net.SocketException: Connection reset