Guten Morgen,
zum Quelltext :
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
aTask: ITask;
begin
aTask := TTask.Create (procedure ()
begin
sleep (3000); // 3 seconds
ShowMessage ('Hello');
end);
aTask.Start;
end;
Dieses Beispiel wird gern kreuz und quer durch die Foren kopiert und ist natürlich voll nutzlos.
Aber nehmen wir mal an, ich möchte mehrere Select - Anfragen losjagen, mit (einfacher Fall)
EINEM Suchparameter, den würde ich gern in den TTask reinbringen.
Die Seitenempfehlung mit dem Closure existiert übrigens nicht.
Die Hilfe, die Embarcadero anbietet, ist unter aller Kanone.
Was ist eigentlich der Vorteil von TTask ggü TThread ?
Nebenbei, ich kann die Prozedur auch "weiter hinten" benannt definieren und dann beim Constructor einbinden:
Delphi-Quellcode:
aTask := TTask.Create (meineprozedur);
// weiter hinten
procedure meineprozedure
begin
WasTun;
end;
Wenn ich ein Objekt definiere, welches die übliche Variablenausstattung hat und in sich den TTask startet, könnte ich also äußere Variablen reinbringen.
Gute Idee ?
ism