TsgcWebSocketClientMethoden › Ping

Ping Methode

Stuurt een WebSocket ping-frame naar de server en keert onmiddellijk terug zonder te wachten op de pong-respons.

Overloads

Overload 1

Syntaxis

procedure Ping(const aText: String = '');

Parameters

NaamTypeBeschrijving
aTextconst StringOptionele payload in het ping-frame; geef een lege tekenreeks door om een ping zonder payload te verzenden.

Opmerkingen

Deze overload activeert de ping en keert onmiddellijk terug, zonder de aanroeper te blokkeren of te wachten op de overeenkomende pong. Het is een no-op wanneer de client niet verbonden is. Elke pong die van de server wordt ontvangen, wordt asynchroon afgeleverd via de standaard verbindingsgebeurtenissen. Intern worden uitzonderingen onderschept en doorgestuurd naar OnError. Gebruik de timeout-overload van de andere overload wanneer u bevestiging nodig heeft dat de peer nog bereikbaar is.

Voorbeeld


oClient.Ping('keepalive');

Overload 2

Syntaxis

function Ping(aTimeout: Integer; const aText: String = '') : Boolean;

Parameters

NaamTypeBeschrijving
aTimeoutIntegerMaximale wachttijd in milliseconden voor de pong-reactie voordat wordt opgegeven.
aTextconst StringOptionele payload in het ping-frame; geef een lege tekenreeks door om een ping zonder payload te verzenden.

Retourwaarde

True als de server binnen het time-outvenster met een overeenkomende pong heeft geantwoord; False anders. Wanneer False wordt geretourneerd, kan de client ervoor kiezen de verbinding te sluiten omdat de peer als onbereikbaar wordt beschouwd. (Boolean)

Opmerkingen

Deze overbelasting blokkeert de aanroependraad totdat de pong aankomt of de time-out verstrijkt, waardoor het handig is voor interactieve liveness-controles. De methode retourneert onmiddellijk False wanneer de client niet is verbonden. Uitzonderingen die worden gegenereerd door de onderliggende socket worden opgevangen en doorgestuurd naar OnError. Gebruik voor een fire-and-forget ping die niet blokkeert de andere overbelasting overbelasting.

Voorbeeld


if not oClient.Ping(5000, 'healthcheck') then
  oClient.Disconnect;

Terug naar methoden