TsgcTCPClient › Properties › HeartBeat

HeartBeat 属性

触发定期应用级心跳,以保持连接活跃并检测停滞。

语法

property HeartBeat: TsgcWSHeartBeat_Options read GetHeartBeat write SetHeartBeat;

默认值

Enabled=False

备注

当 HeartBeat.Enabled 为 True 时,客户端每隔 Interval 秒触发一次 OnBeforeHeartBeat 事件,以便您通过原始 TCP 会话发送应用程序自定义的探针。由于客户端不使用 WebSocket 协议,没有内置的 ping 帧可发送;请在事件处理程序中按照您的传输格式发送适当的保活字节。Timeout 是从发出探针到收到响应的最大等待秒数,超时后连接将关闭(0 表示禁用检查);HeartBeatType 可选择 hbtAlways(每个间隔触发)或 hbtOnlyIfNoMsgRcvInterval(仅在上一个间隔内未收到消息时触发)。这与操作系统级别的 TCPKeepAlive 探针无关。

示例


oTCP := TsgcTCPClient.Create(nil);
oTCP.HeartBeat.Interval := 30;
oTCP.HeartBeat.Timeout := 0;
oTCP.HeartBeat.Enabled := true;
oTCP.Active := true;

返回属性