TsgcTCPClient › Metody › Disconnect
Zamyka połączenie TCP synchronicznie i blokuje wywołującego do momentu zamknięcia gniazda lub upływu limitu czasu.
function Disconnect(const aTimeout: Integer = 10000): Boolean;
| Nazwa | Typ | Opis |
|---|---|---|
aTimeout | const Integer | Maksymalny czas oczekiwania w milisekundach na zamknięcie połączenia. Domyślnie 10000 (10 sekund). |
True, gdy klient rozłączył się w pełni w czasie limitu; False, jeśli limit czasu upłynął jako pierwszy. (Boolean)
Disconnect jest blokującym odpowiednikiem ustawienia Active := False. Czyści właściwość Active, a następnie czeka na wewnętrznym zdarzeniu, aż gniazdo zostanie zamknięte lub upłynie limit czasu. Jeśli klient jest już rozłączony, metoda natychmiast zwraca wartość True. Ponieważ klient TCP nie wymienia ramki zamknięcia na poziomie protokołu, gniazdo jest po prostu zamykane na poziomie transportu. Należy użyć metody Stop, gdy wymagane jest nieblokujące rozłączenie z wątku pomocniczego.
if oClient.Disconnect(10000) then
ShowMessage('Disconnected')
else
ShowMessage('Not Disconnected');