Bezpieczny w wątkach w Delphi

Muszę zmodyfikować i zmienić niektóre elementy wizualne w wątku, a jak wiesz, nie jest to bezpieczne.

Moje pytanie brzmijak napisać kod całkowicie bezpieczny dla wątków? To jest możliwe? jeśli tak, to czy możesz mi podać prosty przykład?

mój kod, który nie jest bezpieczny dla wątków:

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;

Dziękuję Ci.

questionAnswers(3)

yourAnswerToTheQuestion