Goedemorgen beste programmeurs,
Ik heb eigenlijk een korte vraag over een EVENT aanroepen vanuit een Thread.
Deze wordt verder afgehandeld in de Main Thread.
Hier twee opties welke het beste is vanuit mijn Thread.
Code:
Type
TStartStopEvent = procedure(Sender: TObject; Index: Integer; ControlType: TStartStopControl) of object;
Code:
class procedure TAutoStart22.DoStartStopEvent(Sender: TObject; Index: Integer; ControlType: TStartStopControl);
begin
if Assigned(FStartStopEvent) then
FStartStopEvent(Sender, Index, ControlType);
end;
OF...
Code:
class procedure TAutoStart22.DoStartStopEvent(Sender: TObject; Index: Integer; ControlType: TStartStopControl);
begin
TThread.Synchronize(TThread.Current, procedure
begin
if Assigned(FStartStopEvent) then
FStartStopEvent(Sender, Index, ControlType);
end);
end;
Ik heb geleerd dat je vanuit een Thread altijd naar de Main Thread dit moet doen via een Synchronize.
Het kan zijn dat het hier net iets anders mag?
Kunt u mij advies geven of weet u de juiste oplossing?
Alvast bedankt voor het meedenken.
Groetjes,
Eduard.
Bookmarks