Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi ServerSocket+Thread (https://www.delphipraxis.net/6551-serversocket-thread.html)

Snoop007 14. Jul 2003 21:37


ServerSocket+Thread
 
nabend,
ich möchte pro verbundenem client einen thread erstellen,
die clients können unterschiedlich grosse daten senden, dennoch soll gegeben sein, das zugreifende clients daten erhalten bzw. senden

dazu benutze ich die ServerSocket komponente

ich habe eine abgeleitete classe definiert
Delphi-Quellcode:
type
  TServerThreadX = Class(TServerClientThread)
  public
    procedure ClientExecute; override;
  end;

procedure TServerThreadX.ClientExecute;
var
  BrowserHeader : TBrowserHeader;
  s : string;
begin
   s := ClientSocket.ReceiveText;
   if not Terminated and ClientSocket.Connected then
   begin
     BrowserHeader := TBrowserHeader.Create;
     if BrowserHeader.GetData(s, ClientSocket ) = 1 then
     begin
     { ergebnis 1 ist wenn daten komplett gesendet wurden, ansonsten
       sollen die nächsten gesanten daten angenommen und verarbeitet
       werden
     }
       sleep(1);
       ClientSocket.Close;
       Terminate;
     end;
   end;
end;
die ich im OnGetThread Ereignis von ServerSocket erstelle
Delphi-Quellcode:
  SocketThread := TServerThreadX.Create(False, ClientSocket);
wenn der client komplette daten sendet, funktioniert der aufruf,
sobald die daten im mehreren paketen ( sendungen ) ankommen, kommt leider kein ergebnis, das debuggen zeigte, das der server immer die gleichen daten erhielt

das sind meine ersten schritten mit threads, wäre schön wenn ihr mir weiterhelfen könnt

Snoop007 14. Jul 2003 22:20

Re: ServerSocket+Thread
 
Delphi-Quellcode:
   BrowserHeader := TBrowserHeader.Create;
   while not Terminated and ClientSocket.Connected do
   begin
     s := ClientSocket.ReceiveText;
  ...
so klappt das :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:57 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz