我的问题是这样的。
客户端用indy的TIDTCPClient,服务端用INDY的TIDTCPServer组件来实现网络通讯程序。
因为客户端和服务器端不是在一个局域网内的,中间经过了好几个路由器。
但是,由于网络不是很稳定,经常会出现中间的某个路由器断电了,或者死机了。
这时候,客户端和服务器端的程序还是认为Socket是连接状态的,并且访问他们的Active属性状态还是True,此时再发送数据对方就收不到了。
我的意思是有没有办法实现中间的路由器断了,我的两端程序马上就知道网络断了,也就是实时发现,发现后程序就不发送数据了,直接给出告警,这样可以及时提醒用户。这个是如何实现的??请各位大侠帮忙!!
客户端用indy的TIDTCPClient,服务端用INDY的TIDTCPServer组件来实现网络通讯程序。
因为客户端和服务器端不是在一个局域网内的,中间经过了好几个路由器。
但是,由于网络不是很稳定,经常会出现中间的某个路由器断电了,或者死机了。
这时候,客户端和服务器端的程序还是认为Socket是连接状态的,并且访问他们的Active属性状态还是True,此时再发送数据对方就收不到了。
我的意思是有没有办法实现中间的路由器断了,我的两端程序马上就知道网络断了,也就是实时发现,发现后程序就不发送数据了,直接给出告警,这样可以及时提醒用户。这个是如何实现的??请各位大侠帮忙!!
解决方案 »
- sql 查询日期问题
- 请教大家
- 如何将交换机的命令编写好一次性发送给远程的交换机??
- 探索Delphi的出路,让我奉献青春的饭碗-delphi,你路在何方,写得好就给分哈!
- 如何用delphi6或7调用delphi2005做的WebService?
- 2003年的最后一刻,2004年的第一刻,我来CSDN两年了,散分!
- rave报表自定义大小的打印问题,500分通缉!
- Delphi中如何将已经做好的两个工程合并成一个工程,最终只有一个可执行程序??
- 请问关于components[i]中的i的指何物?
- 说你胖,你就喘,给你点分你就抢
- adoquery1.sql.add('insert into tablename values(:id,:name)');怎么才能给参数赋值
- 关于多类型数据库的支持问题
因为TCP本来就有超时机制,大约需要1-3分钟的时间才能发现