1.当socket 关闭了或者由于网络中断和服务器端断掉了连接时。不会主动的通知服务器端
除非服务器端writer 写入数据发生异常。才会发现服务已经断掉了。
2. 但 socket 客户端 调用了socket.close()的方法。 server端 的read 始终读取到了值是-1.(除非发生网络中断的时候才会抛出异常)显示流已经读取的末尾。除非 sever端调用writer方法 发生异常茶会才会发现客户端连接的网路异常。
除非服务器端writer 写入数据发生异常。才会发现服务已经断掉了。
2. 但 socket 客户端 调用了socket.close()的方法。 server端 的read 始终读取到了值是-1.(除非发生网络中断的时候才会抛出异常)显示流已经读取的末尾。除非 sever端调用writer方法 发生异常茶会才会发现客户端连接的网路异常。
本文讨论了Socket连接在不同情况下的状态变化。特别是当客户端或网络出现异常时,服务器端如何发现连接中断。包括客户端调用close方法导致服务器读取到-1值的情况,以及网络中断引发异常的情形。
722

被折叠的 条评论
为什么被折叠?



