java socket报 connection reset的原因和解决方式

论坛 期权论坛 脚本     
匿名技术用户   2021-1-5 08:52   19   0

Java服务器使用Socket时,如果报错: Connection reset

我遇到的一个原因是服务器端主动断开连接了,没有循环等待accept,当然常规做法是在While(true)里开启线程,为了简化看到问题,就没写线程;

即服务器端的accept必须用while (true) 把accept包围起来,否则运行完就退出了,客户端就会报connection reset

具体错误信息如下:

java.net.SocketException:Connection reset

atjava.net.SocketInputStream.read(SocketInputStream.java:196)

atjava.net.SocketInputStream.read(SocketInputStream.java:122)

atsun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:283)

atsun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:325)

atsun.nio.cs.StreamDecoder.read(StreamDecoder.java:177)

atjava.io.InputStreamReader.read(InputStreamReader.java:184)

atjava.io.BufferedReader.fill(BufferedReader.java:154)

atjava.io.BufferedReader.readLine(BufferedReader.java:317)

atjava.io.BufferedReader.readLine(BufferedReader.java:382)

atcom.xiaolv.basic.EchoClient.send(EchoClient.java:21)

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP