社区
C#
帖子详情
Socket经常连接断开
biny101
2010-03-17 10:30:04
我做了一个普通的Socket的通信的程序,但是做为服务器时,客户端不断的连接然后断开,导致服务器异常,不知道这个问题怎么解决
...全文
324
15
打赏
收藏
Socket经常连接断开
我做了一个普通的Socket的通信的程序,但是做为服务器时,客户端不断的连接然后断开,导致服务器异常,不知道这个问题怎么解决
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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]
异常出现了,那边就暂时连不上服务器段了啊
Socket
网络模块(Unity c#)
介绍
Socket
网络
连接
模块: 主要分为四部分: 一、套接字管理器(
Socket
Manager.cs) 1)、
连接
2)、
断开
3)、接收(线程) 4)、发送(携程) 二、消息中心:(MessageCenter.cs) 1)、游戏逻辑事件 2)、网络数据事件...
Python
socket
怎么判断
连接
断开
Python
socket
怎么判断
连接
断开
python
socket
断开
之后,不是返回‘’,也不是返回None,而是 data = self.__client.recv(1024) if data == b"": print('我去年买了个表的返回空,返回None,浪费爸爸多少时间') ...
Socket
编程快速入门
本课程将理本课程将理啊 论结合实践,带你从零开始,系统学习
Socket
编程技术,让
Socket
的学习不再那么零散与难以掌握,同时会提炼出
Socket
网络传输的核心思想与构架,并带你踩坑出坑,增加你的分析与处理问题的啊aas...
服务器中判断客户端
socket
断开
连接
的方法
当recv()返回值小于等于0时,
socket
连接
断开
。但是还需要判断 errno是否等于 EINTR,如果errno == EINTR 则说明recv函数是由于程序接收到信号后返回的,
socket
连接
还是正常的,不应close掉
socket
连接
。 法二: ...
Linux 判断tcp
socket
连接
断开
的方法
Linux C代码客户端判断tcp
socket
连接
断开
或丢失的方法 当建立TCP
socket
连接
后,作为客户端需要对tcp的
连接
做维护。如果
连接
断开
需要重连等操作。但是在
socket
tcp C库代码中没有提供判断
连接
是否正确的接口调用...
C#
110,502
社区成员
642,567
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章