Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Esperar respuesta del Tserversocket y tclientsocket (https://www.clubdelphi.com/foros/showthread.php?t=60461)

cesar_picazo 02-10-2008 23:23:27

Esperar respuesta del Tserversocket y tclientsocket
 
Hola utilizo delphi 6 con los componentes tserversocket1 y tclientsocket1

Mi duda es la siguiente tengo 2 exe uno del cliente y otro del servidor.

Mi problema es que al enviar sendtext con el cliente, me pasa que envio una respuesta del servidor, pero llega un punt que como tengo 3 lineas que envio de informacion esto es
ClientSocket1.Socket.SendText('hola1');sleep(1000);
ClientSocket1.Socket.SendText('hola2');
ClientSocket1.Socket.SendText('hola3');

en el servidor ejecuto un par de procesos y en el proceso 2 puede tardar mas tiempo de lo debido y lo que me pasa es que necesito avisarle al tclientsocket que debe esperar a que termine de procesar.

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
Begin
For temp:= 0 to ServerSocket1.Socket.ActiveConnections-1 do
Begin
srecr:=ServerSocket1.Socket.Connections[temp].receivetext;
if srecr='hola2' then
Begin
Funcion de calculos en el servidor. esta funcion tarda algo de tiempo y necesito que espere a que se termine de ejecutar este proceso antes de poder enviar la respuesta
SendText('Texto recibido');// Le envio una respuesta al cliente pero necesito que espere a que se termine de ejecutar el proceso
End;
end;
end;

procedure TForm1.ServerSocket1Clientwrite(Sender: TObject;

Creo que es por medio del ServerSocket1Clientwrite, pero no tengo idea.

Espero alguien me pueda dar un norte de como hacer que espere a que termine de ejecutar la funcion de read para poder volver a iniciar la ejecucion del servidor.

Vi algo therad pero no estoy seguro de como funcionan, sin mas me despido


La franja horaria es GMT +2. Ahora son las 14:45:15.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi