TsgcWebSocketClientYöntemler › Ping

Ping Yöntem

Sunucuya bir WebSocket ping çerçevesi gönderir ve pong yanıtını beklemeden hemen döner.

Aşırı Yüklemeler

Aşırı Yükleme 1

Sözdizimi

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

Parametreler

NameTypeAçıklama
aTextconst StringPing çerçevesi içinde taşınacak isteğe bağlı yük; yük olmadan bir ping göndermek için boş bir dize geçirin.

Remarks

Bu overload, ping'i tetikler ve çağıranı engellemeden veya eşleşen pong'u beklemeden hemen döner. İstemci bağlı olmadığında bir işlem yapmaz. Sunucudan alınan herhangi bir pong, standart bağlantı olayları aracılığıyla asenkron olarak teslim edilir. Dahili olarak istisnalar yakalanır ve OnError'a yönlendirilir. Peer'ın hâlâ ulaşılabilir olduğunun onayına ihtiyaç duyduğunuzda diğer overload'ın timeout overload'ını kullanın.

Örnek


oClient.Ping('keepalive');

Overload 2

Sözdizimi

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

Parametreler

NameTypeAçıklama
aTimeoutIntegerVazgeçmeden önce pong yanıtını beklemek için milisaniye cinsinden maksimum süre.
aTextconst StringPing çerçevesi içinde taşınacak isteğe bağlı yük; yük olmadan bir ping göndermek için boş bir dize geçirin.

Dönüş Değeri

Sunucu zaman aşımı penceresi içinde eşleşen bir pong ile yanıt verdiğinde True; aksi takdirde False. False döndürüldüğünde, eş ulaşılamaz kabul edildiği için istemci bağlantıyı kapatmayı seçebilir. (Boolean)

Remarks

Bu aşırı yükleme, pong gelene veya zaman aşımı geçene kadar çağıran iş parçacığını engeller, dolayısıyla etkileşimli canlılık denetimleri için kullanışlıdır. İstemci bağlı olmadığında yöntem hemen False döndürür. Temel soket tarafından oluşturulan istisnalar yakalanır ve OnError'a iletilir. Engellemeyen bir gönder-ve-unut ping için bunun yerine parametresiz diğer aşırı yükleme aşırı yüklemesini kullanın.

Örnek


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

Yöntemlere Dön