TsgcWebSocketClientYöntemler › ConnectTask

ConnectTask Yöntem

WebSocket bağlantısını bir arka plan görevinde açar ve beklenebilen (await), zincirlenebilen veya iptal edilebilen bir IsgcTask tanıtıcısı döndürür.

Sözdizimi

function ConnectTask(const aTimeout: Integer = 10000): IsgcTask;

Parametreler

NameTypeAçıklama
aTimeout const IntegerBağlantının etkin hale gelmesini beklemek için milisaniye cinsinden maksimum süre. Varsayılan olarak 10000 (10 saniye).

Dönüş Değeri

Bekleyen bağlantı denemesi için bir IsgcTask tanıtıcısı. Bitene kadar engellemek için Await, başarı durumunda bir devam işlemi çalıştırmak için ThenProc, hataları işlemek için OnError, iptal etmek için Cancel çağırın. IsCompleted, IsCancelled ve State ilerlemeyi bildirir.

Remarks

ConnectTask, Connect yönteminin future tarzı karşılığıdır: engelleyen bağlanma işlemini bir arka plan iş parçacığında çalıştırır ve hemen döner, bu nedenle çağıran iş parçacığı hiçbir zaman engellenmez. Bağlantı aTimeout içinde kurulamazsa görev EsgcAsyncException ile başarısız olur ve OnError devam işlemi çalışır. Döndürülen görevde Cancel çağrılması istemcinin bağlantısını keser; böylece devam etmekte olan bir bağlantı denemesi tamamlanmak yerine iptal edilir. Delphi 2010 veya üzeri (ve C++Builder 2010 veya üzeri) gerektirir; .NET sürümünde kullanılamaz.

Örnek


oClient := TsgcWebSocketClient.Create(nil);
oClient.URL := 'wss://www.esegece.com:2053';
oClient.ConnectTask(5000)
  .ThenProc(procedure
    begin
      oClient.WriteData('Hello from client');
    end)
  .OnError(procedure(E: Exception)
    begin
      ShowMessage('Connection failed: ' + E.Message);
    end);

Yöntemlere Dön