Einzelnen Beitrag anzeigen

Delphi-Laie

Registriert seit: 25. Nov 2005
1.474 Beiträge
 
Delphi 10.1 Berlin Starter
 
#7

AW: Parameterübergabe an VCL-gestarteten Thread

  Alt 22. Mär 2017, 19:41
Bin nicht sicher, was genau jetzt dein Problem ist.
Na, das hatte ich doch in der letzten Frage formuliert: Ob es möglich ist, auf diese Weise dem Thread Parameter zu übergeben.
Ja, definitiv!
Danke, eine solche Antwort schwebte mir vor.

Nach erklecklicher Fummelei mit Stundenüberschreitung kann ich mir diese Frage nun selbst wie folgt beantworten: Mit der Threadklasse von Delphi 2 funktioniert es noch nicht, Delphi 3 lasse ich einmal aus, mit der ab Delphi 4 klappt es jedoch eindeutig. Also ein weitgehendes "ja". Es geht demnach tatsächlich einfacher als von Luckie beschrieben, ich kann es kaum glauben.

Oh, hatte in deinem Profil Delphi 10.1 Starter gesehen und versäumt auf die Version im Thread zu achten.
Das ist das Maximum, das ich installiert habe, aber derzeit nicht benutze.

In dem Fall bin ich nicht mal von der Korrektheit obiger Aussage überzeugt.
Gut, gehen wir es der Reihe nach durch:

Lasse ich im Konstruktor diese einleitende "inherited create(CreateSuspended)"-Zeile weg, passiert während des Programmablaufes hinsichtlich neuer Threads gar nichts - nicht verwunderlich.
Schreibe ich nur "inherited", werden inkompatible Typen vom Compiler angemosert.
Bei "inherited create" werden "Nicht genügend wirliche Parameter" angeprangert.
Erst bei "inherited create(CreateSuspended)" ist es dem Compiler recht.

Wie soll man unter solchen Voraussetzungen an dieser Zeile etwas oder diese Zeile insgesamt weglassen können? Dein Zweifel war zumindest nach meiner Beobachtung also berechtigt.
  Mit Zitat antworten Zitat