Fadensicher in Delphi
Ich muss einige visuelle Komponenten in einem Thread modifizieren und ändern, und wie Sie wissen, ist dies nicht sicher.
Meine Frage istWie schreibe ich einen vollständig thread-sicheren Code? Es ist möglich? Wenn ja, können Sie mir bitte ein einfaches Beispiel geben?
Mein Code, der nicht threadsicher ist:
type
tMyWorkerThread = class(TThread)
public
procedure Execute; override;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure tMyWorkerThread.Execute;
begin
//codes
//working with visual components
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
TMyWorkerThread.Create(false);
end;
Vielen Dank.