问题描述
- C++ Builder心跳包的问题
-
大家好,小弟最近在研究DataSnap服务器心跳包的问题
我用的是TDSTCPServerTransport控件 客户端用TSQLConnection连接
看网上的帖子说只需要在TDSTCPServerTransport中设置心跳属性就可以了
当客户端没有网络异常时,服务器会在超时后触发心跳,结束后为触发TDSTCPServerTransport的DSTCPServerTransportDisconnect事件。
但是我在客户端断开网络之后,服务器一直等不到Disconnect事件是为什么呢。是不是还有其他地方要设置?我的客户端是直接设置好TSQLConnection的Driver属性后Open(), 成功后不主动断开,然后断开网络来模拟网络异常。有大虾帮帮忙看看么?
解决方案
解决方案二:
tcp通信的send事件,失败会有异常返回。可以自己写个心跳包机制。
时间: 2024-08-04 13:57:58