![]() |
Mehrere Kopien eines Threads?
Hallo!
Ich habe einen Thread, deren Create-Procedure überschrieben und durch zusätzliche Parameter ergänzt wird.
Code:
Dann werden irgendwo im Programm mehrere Kopien dieses Threads erstellt, die meist gleichzeitig laufen. Meine Frage ist: muss ich unbedingt einen Threads-Array erstellen und dann jedesmal, wenn einen neuen Thread erstellt werden muss, so vorgehen
...
type TGetThread = class (TThread) constructor create(CreateSuspended: boolean; ListViewItem2: TListItem); private { Private declarations } http: TIdHTTP; ListViewItem: TListItem; CrS: TCriticalSection; protected procedure Execute; override; end; ... constructor TGetThread.create(CreateSuspended: boolean; ListViewItem2: TListItem); begin inherited create(CreateSuspended); ListViewItem := ListViewItem2; end; ...
Code:
oder kann ich einfach den Thread erneut erstellen, wenn ich es brauche, etwa so:
var
TGetThreadCopy: array[1..10] of TThread; ... procedure TForm1.Button1Click(Sender: TObject); begin TGetThreadCopy[1] := TGetThread.Create(false, ListView1.Items.Item[0]) end; ...
Code:
Wie ist es besser? Ich habe beide Methoden ausprobiert, die funktionieren beide. Ich möchte nur sicher gehen, das ich nichts falsches mache.
...
procedure TForm1.Button1Click(Sender: TObject); var Thread: TThread; begin Thread := TGetThread.create(false, ListView1.Items.Item[0]); end; ... Danke! |
Re: Mehrere Kopien eines Threads?
Musst du denn noch auf Eigenschaften des Threads-Objektens zugreifen, wenn er läuft? Brauchst du das Handle oder sonst was, um ihn zum Beispiel suspendieren zu können oder? Wenn nicht, dann ist das Array überflüssig.
|
Re: Mehrere Kopien eines Threads?
He-he! Was Threads angeht, ist Luckie sofort da! Super! Danke! :-D
Das Ziel des Threads ist, eine Webseite aufzurufen und Quelltext auf bestimmte Information durchzusuchen. Dabei wenn die bestimmte Information gefunden wurde, eine andere Thread-eigene Procedure aufzurufen. Alle Thread-Aktivitäten werden in dem beim Erstellen des Threads zugewiesenen TListItem dem User sichtbar gemacht. Wenn der ListItem gelöscht wird, terminiert der Thread. Das war's. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:19 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz