java socket重新连接

younerest 2011-08-04 11:04:34
最近在做一个SOCKET程序,程序在运行的时候有时候会出现如下这个错误:
java.net.SocketException: Connection reset by peer: socket write error,我在网上查了下有一种可能是服务器那边断开了连接。我现在想要解决的是当出现这个情况的时候,我这边SOCKET重新连接。我这边有试试过

Socket:sct;
.....
.....
sct.close;
sct=null;
sct=new Socket(....);
不过这样重新连接后还是会出错,请问下各位大虾,让SOCKET完全重新连接要怎么弄。
...全文
497 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
再不斩 2011-08-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 xiesisi3 的回复:]

在catch(Exception e){}这个里面写重连的方法吧。
还有重连后出错出的什么错?是不是服务器已经关闭了而不是循环监听端口?
[/Quote]
他要是在finally里面关闭了socket怎么办啊?
younerest 2011-08-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 xiesisi3 的回复:]
在catch(Exception e){}这个里面写重连的方法吧。
还有重连后出错出的什么错?是不是服务器已经关闭了而不是循环监听端口?
[/Quote]
重连接的方法要怎么写好,错误提示是这样的:
java.net.SocketException: Connection reset by peer: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(Unknown Source)
at java.net.SocketOutputStream.write(Unknown Source)
at sgipAPI.SGIPMessage.write(SGIPMessage.java:219)
at Sgip.SgipM$SendThread.run(SgipM.java:195)
younerest 2011-08-04
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 godwanglong 的回复:]
服务端什么代码
[/Quote]

服务端是别人网关那边的,代码看不到,这个问题我有问过对方,对方说是服务器把连接给断了,所以我想当连接短掉的时候,重新建立一个连接
xiesisi3 2011-08-04
  • 打赏
  • 举报
回复
在catch(Exception e){}这个里面写重连的方法吧。
还有重连后出错出的什么错?是不是服务器已经关闭了而不是循环监听端口?
godwanglong 2011-08-04
  • 打赏
  • 举报
回复
服务端什么代码

62,616

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧