重金求解(200分)

  • 主题发起人 主题发起人 填海精卫
  • 开始时间 开始时间

填海精卫

Unregistered / Unconfirmed
GUEST, unregistred user!
indy控件中tcpserver对某连接是否还存在的判断:
一般tcpclient断开与tcpserver的连接,tcpserver的onDisconnect事件能触发,但
也有例外,这种情况对于拨号上网的用户很明显。tcpclient已经非正常断开,但
tcpserver还是保存了该连接的所有信息(管理该连接的线程还存在)。我把
TIdTCPConnection的CheckForDisconnect修改成function期望能得到检查结果,但它也
检查不出某连接的状态。DFW们帮帮忙,告诉我怎么才能在服务端判断某连接是否还存在
(从服务端利用该连接发送消息到客户端,如果出错说明该连接不可用,我不想这么做)
先谢谢各位。
 
兄弟,你的要求太高,恐怕只有从服务器端发消息了。
如果你有更好答案不忘了把它贴出来。
 
即使不能实时监测连接状况 能找到常用的一定时间内无数据交互就断开的属性 也行呀?
 
我觉得还是用异常检查来做更可靠,TCPSERVER好像没有更好的属性。
 
客户端写给东西,定时向服务端发消息,
服务端1但,长时间收不到某个客户端的消息,则说明断开。
 
研究了一下 可以解决我眼下的需求 就是当客户端断开时 可以捕捉的一个异常 根据这个异常所对应的线程 作断开连接和释放线程的操作 即可 不知是否适合您的需求
 
多人接受答案了。
 
后退
顶部