TsgcWebSocketClientEvents › OnBeforeWatchDog

OnBeforeWatchDog Gebeurtenis

Wordt geactiveerd voor elke WatchDog-reconnectiepoging, zodat de applicatie de doelserver kan aanpassen of de poging kan onderdrukken.

Syntaxis

__property TsgcWSOnBeforeWatchDogEvent OnBeforeWatchDog;
// typedef void __fastcall (__closure *TsgcWSOnBeforeWatchDogEvent)(TObject * Sender, bool &Handled);

Standaardwaarde

Opmerkingen

Wanneer WatchDog is ingeschakeld en een onverwachte verbreking wordt gedetecteerd, wacht de client WatchDog.Interval seconden en probeert vervolgens opnieuw verbinding te maken. OnBeforeWatchDog wordt geactiveerd vlak vóór elke poging, waardoor de applicatie de serververbindingseigenschappen (Host, Port, URL, TLS...) kan wijzigen om terugvallogica te implementeren, zoals overschakelen naar een secundaire server na meerdere mislukte pogingen. Het instellen van Handled op True annuleert de herverbindingspoging voor deze cyclus; het op False laten (de standaard) laat de WatchDog doorgaan met het opnieuw verbinden.

Voorbeeld


void OnBeforeWatchDog(TObject *Sender, bool &Handled)
{
  TsgcWebSocketClient *oClient = (TsgcWebSocketClient*)Sender;
  if (oClient->WatchDog->AttemptsCount > 3)
    oClient->Host = "fallback.example.com";
  Handled = false;
}

Terug naar Events