TsgcWebSocketClientOlaylar › OnBeforeWatchDog

OnBeforeWatchDog Olay

Her WatchDog yeniden bağlanma denemesinden önce tetiklenir, böylece uygulama hedef sunucuyu ayarlayabilir veya yeniden denemeyi engelleyebilir.

Sözdizimi

property OnBeforeWatchDog: TsgcWSOnBeforeWatchDogEvent;
// TsgcWSOnBeforeWatchDogEvent = procedure(Sender: TObject; var Handled: Boolean) of object

Varsayılan Değer

Remarks

WatchDog etkinleştirildiğinde ve beklenmedik bir bağlantı kesilmesi algılandığında, istemci WatchDog.Interval saniye bekler ve ardından yeniden bağlanmayı dener. OnBeforeWatchDog, her denemeden hemen önce tetiklenir, bu da uygulamanın sunucu bağlantı özelliklerini (Host, Port, URL, TLS...) değiştirmesine olanak tanır, böylece birkaç başarısız denemeden sonra ikincil bir sunucuya geçme gibi yedek mantığı uygulanabilir. Handled değerini True olarak ayarlamak, bu döngü için yeniden bağlanma denemesini iptal eder; False bırakmak (varsayılan) WatchDog'un yeniden bağlanmaya devam etmesine izin verir.

Örnek


procedure OnBeforeWatchDog(Sender: TObject; var Handled: Boolean);
var
  oClient: TsgcWebSocketClient;
begin
  oClient := TsgcWebSocketClient(Sender);
  if oClient.WatchDog.AttemptsCount > 3 then
    oClient.Host := 'fallback.example.com';
  Handled := False;
end;

Olaylara Dön