TsgcWebSocketClient이벤트 › OnBeforeWatchDog

OnBeforeWatchDog 이벤트

각 WatchDog 재연결 시도 전에 발생하여 애플리케이션이 대상 서버를 조정하거나 재시도를 억제할 수 있게 합니다.

구문

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

기본값

설명

WatchDog가 활성화되고 예기치 않은 연결 해제가 감지되면 클라이언트는 WatchDog.Interval 초 동안 기다린 다음 다시 연결을 시도합니다. OnBeforeWatchDog는 각 시도 직전에 발생하며, 애플리케이션이 서버 연결 속성(Host, Port, URL, TLS...)을 변경하여 여러 번 실패한 시도 후 보조 서버로 전환하는 것과 같은 폴백 로직을 구현할 수 있게 합니다. Handled를 True로 설정하면 이 주기의 재연결 시도가 취소됩니다. False로 두면(기본값) WatchDog가 재연결을 진행합니다.

예제


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;

이벤트로 돌아가기