TsgcTCPClient › Methods › Disconnect

Disconnect Método

Fecha a conexão TCP de forma síncrona e bloqueia o chamador até que o socket seja fechado ou o timeout decorra.

Sintaxe

function Disconnect(const aTimeout: Integer = 10000): Boolean;

Parâmetros

NameTypeDescrição
aTimeoutconst IntegerTempo máximo em milissegundos para aguardar o fechamento da conexão. Assume 10000 (10 segundos) por padrão.

Valor de retorno

True quando o cliente foi totalmente desconectado dentro do timeout; False se o timeout expirou primeiro. (Boolean)

Observações

Disconnect é a contrapartida bloqueante de definir Active := False. Ele limpa Active e então aguarda em um evento interno até que o socket seja encerrado ou o timeout seja atingido. Se o cliente já estiver desconectado, o método retorna True imediatamente. Como o cliente TCP não troca um frame de fechamento de nível de protocolo, o socket é simplesmente encerrado no nível de transporte. Utilize Stop em vez disso quando precisar de uma desconexão não bloqueante a partir de uma thread secundária.

Exemplo


if oClient.Disconnect(10000) then
  ShowMessage('Disconnected')
else
  ShowMessage('Not Disconnected');

Voltar para Métodos