udp 心跳包怎么设计?(回答正确再加50分)

stg609 2008-02-15 01:46:15
想利用心跳包来判断客户是否在线,这个该怎么设计?
...全文
621 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
STGCX 2008-02-15
  • 打赏
  • 举报
回复
用timer定时执行以下内容
建立Socket,区别于服务器原有的socket
绑定IP,PORT,区别于原有IP,Port
设置sokcet的SocketOption 如socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReceiveTimeout,3000);
向客户端发送信息
try
{
receivefrom(...)
}
catch
{
如果3秒内没有收到信息就可以捕捉到异常
}
关闭socket
释放socket
Sorder 2008-02-15
  • 打赏
  • 举报
回复
tcp里面好像有option设置自动发心跳包,
udp没用过,没知道有没有这样的设置
vrhero 2008-02-15
  • 打赏
  • 举报
回复
定义一个超时时间...客户以小于超时时间的周期重复发心跳包...服务器只管收...超时就算脱机...
symbol441 2008-02-15
  • 打赏
  • 举报
回复
说细一点吧,直接使用一个timer定时向所以在线的用户端口发送消息,以此来判定.
itcoco 2008-02-15
  • 打赏
  • 举报
回复
定时发数据,按照最后一次收到数据的时间与当前时间比,判断在线否?
wuhq030710914 2008-02-15
  • 打赏
  • 举报
回复
定时发送,自定义一个过期时间,在该时间内没有返回就视为不在线

110,539

社区成员

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

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

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