TsgcTCPClient › Propriétés › HeartBeat
Déclenche un heartbeat périodique au niveau applicatif pour maintenir la connexion active et détecter les blocages.
property HeartBeat: TsgcWSHeartBeat_Options read GetHeartBeat write SetHeartBeat;
Enabled=False
Lorsque HeartBeat.Enabled est True, le client déclenche l'événement OnBeforeHeartBeat toutes les Interval secondes afin que vous puissiez écrire une sonde définie par l'application sur la session TCP brute. Étant donné que le client ne parle pas le protocole WebSocket, il n'a pas de trame ping intégrée à envoyer ; utilisez le gestionnaire d'événement pour émettre les octets de maintien en vie que votre format de fil attend. Timeout est le nombre maximal de secondes entre la sonde sortante et une réponse avant que la connexion soit fermée (0 désactive la vérification), et HeartBeatType sélectionne hbtAlways (se déclenche à chaque intervalle) ou hbtOnlyIfNoMsgRcvInterval (seulement si aucun message n'a été reçu pendant le dernier intervalle). Ceci est sans rapport avec les sondes TCPKeepAlive au niveau du système d'exploitation.
oTCP := TsgcTCPClient.Create(nil);
oTCP.HeartBeat.Interval := 30;
oTCP.HeartBeat.Timeout := 0;
oTCP.HeartBeat.Enabled := true;
oTCP.Active := true;