Socket 心跳包 线程设计

GoodDao 2008-10-18 01:00:01
要求如下:
Socket客户端与服务器建立连接A,连接B
A,B连接得到服务器确认后
A承担工作,发送接受命令与服务端通讯,同时每隔6秒发送心跳包到服务端
B承担工作,接受服务端返回心跳包,30秒接受不到心跳包,判断出连接断开
完成以上功能,程序如何设计?线程如何设计?
有写过心跳包保持长连接的大侠可否提供实例代码?

...全文
1341 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
my_wujian89 2011-03-29
  • 打赏
  • 举报
回复
总的来说就是数据包,不过他的用途是检测网络是否连接的,包的发送是有一定的频率的。
whlxjq520 2011-01-19
  • 打赏
  • 举报
回复
我也面对了这样的问题,需要发送心跳包!请解答。。。
hl_ghost 2008-10-20
  • 打赏
  • 举报
回复
我们公司只让用skype,ht_quyanfeng.
老紫竹 2008-10-18
  • 打赏
  • 举报
回复
心跳是双向的?可以简单的Socket链接另一方,然后定期发送数据。
对方定期检测数据,如果连续几次没有数据,则确认心跳失败。
如果连续几次发送失败,则心跳失败。
java__king 2008-10-18
  • 打赏
  • 举报
回复
只能学习.
GoodDao 2008-10-18
  • 打赏
  • 举报
回复
同一个端口的两条连接,或者你留个MSN/QQ向你请教
hl_ghost 2008-10-18
  • 打赏
  • 举报
回复
你的两个连结怎么理解?

     用的两个端口?还是同一个端口一个tcp,一个udp ?
GoodDao 2008-10-18
  • 打赏
  • 举报
回复
谢谢,服务端已经确定不可以更改,同一个客户端建立A B两连接
心跳包要怎么设计呢?
客户端A连接定时发送心跳包,并且在发心跳包时,可能writer给服务器其他的大数据包,这时服务器一边发回正常数据,同时发回心跳包,B连接负责接受,会不会搞混啊?线程怎么控制?
hl_ghost 2008-10-18
  • 打赏
  • 举报
回复
这个很好写的,
  一分钟就可以吧,你什么样的需求会要6秒一个呢?
客户端连服务器是一定可以连上的,心跳包只是保证服务器能找到客户端。并且知道这个客户端是否还存在
这个看下,也许有用。不一定对哈,我也菜
http://topic.csdn.net/u/20081009/13/abd12947-e78e-43ba-9a43-ce690ecb8ac2.html

81,092

社区成员

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

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