收录日期:2019/04/18 21:07:51 时间:2016/06/01 15:43:59 标签:网络通信/分布式开发
client经常由于各种原因与server失去联系,server端需要比较快的知道,然后采取相应的措施。
诸位大侠在实际中是如何解决这个问题的?
在OnConnect为每个连接设置readtimeout,如果超时就断开
AThread.Connection.ReadTimeout:=5000//5秒
To getit911,您的例子是server读不到数据超过5s就断开。可是server和client连接后,什么也不做,没有读client数据的事情呀
在OnExecute消息中写
sleep(100);
AThread.Connection.CheckForGracefulDisconnect();
什么都不做?那要这个程序干什么?
这个好像不能达到哪个目的?
现在我的一个server有十个client,server等待和接受client发的数据。client不一定什么时候发,也不一定发多少。server应该知道哪个client断线了,要把这个client的IP记录下来,而且这个处理时间不能太长,因为client给server发数据的话,server必须立刻迅速响应,如果sleep(100)后再响应接受client的数据,那太漫长了,client无法忍受。
To:net_morning(矿泉水) 
    能否把你的代码给我发一份过来,我研究一下如何解决?bdtonyliu@263.net
To:net_morning(矿泉水) 
 “server应该知道哪个client断线了” :能不能考虑用多线程呢?
 “把这个client的IP记录下来”:定义一个String变量就是了。
可不可这样考虑:客户端同时也是服务端,不断的向对方传送握手信号,如果对方传回信息或者收到对方的握手信息就显示对方在线,如果没有了这个握手信号就说明对方已经断线或者退出。虽然会增加双方的系统开销但是应该是一种比较可靠的方法。
在ondisconnect事件里面处理

28岁,即将失业,想转行大家给个意见 客户端访问的时候 如何把动态jsp翻译成html 怎样实现对SQL数据库进行加密?请大家给些建议和方法,进者均有分! 不知不觉发现自己老了 控制你的色欲 将一个DBF表按组分解为多个DBF表的问题 动态菜单问题-急求 我的机器一开机就自动进入BIOS 用托管代码实现了语音通讯,但是遇到一些问题。路过的过来看一下。 如何读取Excel中的sheet名称? 一个关于类似datagrid功能的控件问题。 有关PetShop一个细节问题. C#中有不定长数组吗?大伙帮忙看看下面这个关于数组的问题如何解决 俺狐疑水园有人故弄玄虚,整天宣传什么“做善事、因果报应”什么的。 问:.net做的页面的如何居中布局 发现同窗体的控件不能绑定同一个数据源,但是不同窗体的好像可以啊? 关于静态调用 dll 的问题 求助!!高手来!!急~~~ 如何使用relations??? 请教COOKIES的问题 有没有浏览器的源代码呀.我现在开发一个系统需要涉及到浏览器的开发.小型的浏览器就可以了. 一张页面上有一个按钮并且内嵌一个iframe 怎么用按纽取出iframe里面的 Frame同步问题!!在线等 点击button控件后,怎么保留非服务器端文本框里的文字 csdn登陆器1.7版及csdn验证码dll库打包下载 为什么我在插入数据到access数据库时 web.xml问题,马上给分! 有关struts中的问题 如何计算datagrid里某一列的值 关于DataGrid中设定列宽的问题