当前位置: 技术问答>linux和unix
在C/S的网络结构中,服务器如何判断客户端是否在线,最好举例说明!谢谢
来源: 互联网 发布时间:2015-03-31
本文导语: 我是个初学者,谢谢大家指教 | 用who看看他的idle了! | 你是用c写的程序吗? 网络程序、中判断客户是否在线,有很多办法, 1。如果是一直建立了连接的程序,那么如果对...
我是个初学者,谢谢大家指教
|
用who看看他的idle了!
|
你是用c写的程序吗?
网络程序、中判断客户是否在线,有很多办法,
1。如果是一直建立了连接的程序,那么如果对方下线,你自己收到了 socket close 的消2息,如果对方突然死机等原因,你自然收throw。这个很容易。
2。如果客户是在需要的时候才和服务器连接的话,那么你可以给客户端些一个检测在线的代码,即客户端每搁一个固定的时间就和服务器通讯一次,报道他的存在。那么服务器如果发现搁了一定时间后客户没有来联系,那么说明客户不在线。
网络程序检测客户在线就是上面的方法。
如果你只检测客户机器是不是开着的话,那么还可以在服务器上些一些代码实现ping的功能,如果客户返回icmp包,那么客户一定开着机了,但是这个可能会被防火墙过滤。
网络程序、中判断客户是否在线,有很多办法,
1。如果是一直建立了连接的程序,那么如果对方下线,你自己收到了 socket close 的消2息,如果对方突然死机等原因,你自然收throw。这个很容易。
2。如果客户是在需要的时候才和服务器连接的话,那么你可以给客户端些一个检测在线的代码,即客户端每搁一个固定的时间就和服务器通讯一次,报道他的存在。那么服务器如果发现搁了一定时间后客户没有来联系,那么说明客户不在线。
网络程序检测客户在线就是上面的方法。
如果你只检测客户机器是不是开着的话,那么还可以在服务器上些一些代码实现ping的功能,如果客户返回icmp包,那么客户一定开着机了,但是这个可能会被防火墙过滤。