Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   indy 10 TCpClient + Thread (https://www.delphipraxis.net/178224-indy-10-tcpclient-thread.html)

1aa 24. Dez 2013 15:04

indy 10 TCpClient + Thread
 
Ich habe einen Thread welcher sämtliche Sende Und empfangs aufgaben erledigen soll:
Delphi-Quellcode:
TEvent = procedure of Object;

  tLeseThread = class(TThread)
    private
      fReadData : TEvent;
      fWriteData : TEvent;
      fDeleteData : TEvent;
    public
      procedure Execute; override;
      property ReadData : TEvent read fReadData write fReadData;
      property WriteData : TEvent read fWriteData write fWriteData;
      property DeleteData : TEvent read fDeleteData write fDeleteData;
  end;
...

procedure tLeseThread.Execute;
begin
 while NOT(Terminated) do
   Begin
     if Not(Terminated) then if Assigned(fWriteData) then fWriteData;
     if Not(Terminated) then if Assigned(fReadData) then (fReadData);
     if Not(Terminated) then if Assigned(fDeleteData) then fDeleteData;
   End;
end;
senden klappt auch super nur beim Lesen schmiert der thread nach dem 1. read timeout ab.... weis einer woran das leigen könnte?

Mavarik 24. Dez 2013 15:39

AW: indy 10 TCpClient + Thread
 
Greifen alle Deine Event-Procedures auf das gleiche Indy Object zu?

1aa 24. Dez 2013 19:26

AW: indy 10 TCpClient + Thread
 
ja greifen sie

Der schöne Günther 24. Dez 2013 20:06

AW: indy 10 TCpClient + Thread
 
Ganz dumme Vermutung: Indy Timeout wird doch als Exception geworfen. In deinem Thread bubbelt die ganz nach oben, niemand fängt sie. Somit ist der Thread zu Ende.

1aa 25. Dez 2013 00:29

AW: indy 10 TCpClient + Thread
 
ok danke für den Tip jetzt geht es....


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:12 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