Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi THREADS: Benutzung von "TThread.ReturnValue" (https://www.delphipraxis.net/3948-threads-benutzung-von-tthread-returnvalue.html)

scp 5. Nov 2003 11:09

Re: THREADS: Benutzung von "TThread.ReturnValue"
 
Innerhalb des Threadcodes, die zwei wollten ja unterschiedliche Rückgabewerte.

Garby 5. Nov 2003 11:14

Re: THREADS: Benutzung von "TThread.ReturnValue"
 
Hallo,

mal generell: Warum sollte ich einen Thread verwenden, wenn ich die Ausführung des Hauptthreads anhalte, bis der erzeugte Thread beendet wird?

Ich verwende immer ein Ereignis im Thread, das ich am Ende von TThread.Execute (oder bei einem evtl. auftretenden Fehler) synchronisiert aufrufe.

DataCool 5. Nov 2003 11:16

Re: THREADS: Benutzung von "TThread.ReturnValue"
 
Da ist mir meine Lösung aber bei weitem lieber !

1. Kann man die Klase ThreadResult beliebig erweitern

2. Kann ich auch Strings zurück bekommen

3. Kann ich die Eigenschaft FreeOnTerminate bei mir auf True setzen

Gruß Data

Luckie 5. Nov 2003 11:18

Re: THREADS: Benutzung von "TThread.ReturnValue"
 
waitFor legt den Hauptthread nicht lahm, sonst dürfte scp's Beispiel nicht funktionieren. WaitFor fragt nur den ExiotCode des Threads ab, wenn ich das richtig sehe.

DataCool 5. Nov 2003 11:18

Re: THREADS: Benutzung von "TThread.ReturnValue"
 
@Garby:
Wer hat den gesagt, das der Thread innerhalb des Haupt-Threads erzeugt wird ?
Bei mir wird der Thread aus anderen Threads erzeugt.

Gruß Data

Garby 5. Nov 2003 11:21

Re: THREADS: Benutzung von "TThread.ReturnValue"
 
AHA, und warum erzeugst du dann noch einen Thread :?:

Luckie 5. Nov 2003 11:25

Re: THREADS: Benutzung von "TThread.ReturnValue"
 
Eventuell ist das ein Dispatcher Thread. Oder weiß der Geier, was das für eine Konstruktion ist. :mrgreen:

DataCool 5. Nov 2003 11:25

Re: THREADS: Benutzung von "TThread.ReturnValue"
 
Weil einen Thread mehere Aufgaben verwaltet und die entsprechenden Child-Threads aufruft.

Außerdem hat Luckie wiedermal recht, wenn er sagt das waitFor nicht den mainThread blockiert.

Gruß Data


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:21 Uhr.
Seite 2 von 2     12   

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