hola:
tengo una plicacion cliente servidor, el cliente lo tengo programado para que cuando se desconecte vuelva a interntar conectarse.
mi problema surge cuando cierro el servidor, me envia el error "terminate thread timeout" y se queda colgado. antes de cerrar el servidor envio una instruccion a todos los clientes conectados para que se desconecten y realicen una pausa de 3 seg. para volver a intentar conectarse.
de antemano agradesco su ayuda...
===SERVIDOR===
Código Delphi
[-]
procedure TFMain.FormClose(Sender: TObject; var Action: TCloseAction);
begin
EnviaComando('DESCONECTAR','','');
Server.Active := False;
Clients.Free;
LimpiaTabla;
FDM.Tequipos.close;
FDM.Access.Close;
Application.processMessages;
application.Terminate;
end;
===CLIENTE===
Código Delphi
[-]
procedure TFMain.ClientDisconnected(Sender: TObject);
begin
sleep(3000);
Conectar;
end;
procedure TFMain.Conectar;
begin
While not Client.Connected do
begin
try
Client.Connect(1000); ClientHandleThread := TClientHandleThread.Create(True);
ClientHandleThread.FreeOnTerminate:=True;
ClientHandleThread.Resume;
except
end;
end;
end;
procedure TFMain.Desconectar;
begin
ClientHandleThread.Terminate;
Client.Disconnect;
end;