Socket经常连接断开

biny101 2010-03-17 10:30:04
我做了一个普通的Socket的通信的程序,但是做为服务器时,客户端不断的连接然后断开,导致服务器异常,不知道这个问题怎么解决
...全文
324 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
菠萝帅帅的 2011-05-27
  • 打赏
  • 举报
回复
biny101 2010-03-26
  • 打赏
  • 举报
回复
这个贴继续顶
Socket.close()都执行了 还抛出异常
qldsrx 2010-03-18
  • 打赏
  • 举报
回复
最好检查下客户端是如何处理出错重连的部分
biny101 2010-03-18
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 qldsrx 的回复:]
看看是不是网络不稳定造成的,如果是那样,先解决硬件环境的问题。至于接收异常了,就直接关闭,没必要犹豫,毕竟那是客户端都给你关闭了,服务端还不关闭干嘛?
[/Quote]


是啊 我关了,但是客户端再连接的时候就会连接不上,不知道什么原因?
qldsrx 2010-03-17
  • 打赏
  • 举报
回复
要是客户端也是自己写的,断开之前最好发送退出信号给服务器,如果不是,服务器端就好自己定时检查闲置的Socket连接,发送一个心跳包给客户端,如果客户端已经断开,两次发送后会出现异常,这时你就可以关闭它了。
wenbin 2010-03-17
  • 打赏
  • 举报
回复
短连接的,那就在完成任务时关闭SOCKET,当然你要对整个接收和连接过程捕获异常。

客户端退出时close下
biny101 2010-03-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 huangheguyun 的回复:]
这个有可能是网络设置问题,你着重查一下网络设置,是不是设置为了不间断的连接了?
[/Quote]

首先,你说的这个设置不间断连接 ,这个地方在哪里设置,
另外我做的这个是短连接,连接成功后,可能会立即断开,所以经常这样连接,断开就会导致服务器短出现异常,可以肯定网络是没有问题的。
biny101 2010-03-17
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wodegege10 的回复:]
除去网络不好的情况的话,还是着重检查下程序

是不是什么地方出了异常。

一般建立长连接后,断开的次数没那么多

若是因为网络的问题,可以使用间隔的方式,连接一次后,做个计时,一段时间不让再重连。
[/Quote]


我做的这个是短连接,连接成功后,可能会立即断开,所以经常这样连接,断开就会导致服务器短出现异常,可以肯定网络是没有问题的。
huangheguyun 2010-03-17
  • 打赏
  • 举报
回复
这个有可能是网络设置问题,你着重查一下网络设置,是不是设置为了不间断的连接了?
wenbin 2010-03-17
  • 打赏
  • 举报
回复
除去网络不好的情况的话,还是着重检查下程序

是不是什么地方出了异常。

一般建立长连接后,断开的次数没那么多

若是因为网络的问题,可以使用间隔的方式,连接一次后,做个计时,一段时间不让再重连。
inmyownsky1 2010-03-17
  • 打赏
  • 举报
回复
友情帮顶。。。。。。。。。。。。。。
biny101 2010-03-17
  • 打赏
  • 举报
回复
顶 等待朋友们帮忙~~
qldsrx 2010-03-17
  • 打赏
  • 举报
回复
看看是不是网络不稳定造成的,如果是那样,先解决硬件环境的问题。至于接收异常了,就直接关闭,没必要犹豫,毕竟那是客户端都给你关闭了,服务端还不关闭干嘛?
biny101 2010-03-17
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wodegege10 的回复:]
短连接的,那就在完成任务时关闭SOCKET,当然你要对整个接收和连接过程捕获异常。

客户端退出时close下
[/Quote]

这些都没有问题,只是他不断的连接断开,非常频繁,而且有时刚连接上就断开了,这个时候就会再异步接收的地方抛出异常,然后客户端就会连接不上了,不知道怎么解决了。。
biny101 2010-03-17
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 qldsrx 的回复:]
要是客户端也是自己写的,断开之前最好发送退出信号给服务器,如果不是,服务器端就好自己定时检查闲置的Socket连接,发送一个心跳包给客户端,如果客户端已经断开,两次发送后会出现异常,这时你就可以关闭它了。
[/Quote]

异常出现了,那边就暂时连不上服务器段了啊

110,502

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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