Einzelnen Beitrag anzeigen

Olli
(Gast)

n/a Beiträge
 
#13

Re: Threads Suspend -> Resume ... wo gehts weiter?

  Alt 26. Aug 2005, 12:51
Zitat von Luckie:
In Delphi in a nutshell steht, dass wenn man den Konstruktor überschreibt, man die Thread-Instanz im Angehaltenenzustand erzeugen soll, damit er nicht schon los läuft bevor alles initialisiert wurde.
So macht das Sinn. Aber dies erledigt ja der Konstruktor. Und der kann auch ganz transparent für den Benutzer am Ende den Thread wieder aufwecken (so wie du es machst) oder eben nicht. Man sollte hier vielleicht besser zwischen "Benutzer" und "Entwickler" der Klasse unterscheiden. Für den Benutzer ist es transparent. Der Entwickler hat dafür gesorgt. Bsp:
Delphi-Quellcode:
constructor TSomeThread(Param1, Param2: TFoobar; OnTerminate: TNotifyEvent; bSuspended: Boolean = False);
begin
  inherited Create(True); // create suspended
  
  Self.OnTerminate = OnTerminate;
  FreeOnTerminate := True;

  if (not bSuspended) then
    Resume(); // und Thread starten
end;
...
  Mit Zitat antworten Zitat