Hallo,
ich habe Eine Firemonkey Applikation in der ich einen Thread erzeuge.
Nun möchte ich eine einfach Ausgabe des Threads mit Synchronize vornehmen.
Delphi-Quellcode:
type
TShowInMainForm = procedure(const Content: String) of object;
TJobListThread = class(TThread)
private
{ Private-Deklarationen }
Warte : Boolean;
FEvent : TEvent;
FShowInMainForm : TShowInMainForm;
FContent : String;
protected
procedure Execute; override;
public
procedure SyncShowInMainForm;
Constructor Create(Suspended: Boolean);
property ShowInMainForm : TShowInMainForm read FShowInMainForm write FShowInMainForm;
end;
procedure TJobListThread.SyncShowInMainForm;
begin
if Assigned(FShowInMainForm) Then Begin
FShowInMainForm(FContent);
End;
end;
Der Aufruf erfolgt mit
Delphi-Quellcode:
Au
FContent := TSetDeviceTemp(JobList[i]).VarName +'PeerId: '+
IntToStr(TSetDeviceTemp(JobList[i]).PeerId);
Synchronize(SyncShowInMainForm);
Ich hoffe dass das Code Fragment ausreichend ist, ist ja nichts besonderes.
Bisher hat das in meinen Programmen immer fehlerfrei auf diese art funktioniert, nun kommt in meinem
neuen Programm diese Fehlermeldung. Zwar nicht immer, nur ab und zu und ich habe keine Ahnung wieso...
Habe gerade das Update auf Version 10.2.2 gemacht, ich hoffe nicht, dass es daran liegt...
Der Fehler tritt unter Windows auf.
Viele Grüße
Elmar