Du greifst ohne zu Synchronisieren auf visuelle Komponenten des Formulares zu:
Delphi-Quellcode:
procedure TTimerLabel.Execute;
begin
inherited;
ShowTime;
end;
procedure TTimerLabel.ShowTime;
begin
while not FStop do
begin
FTimeLabel.Caption := TimeToStr(Now);
Sleep(Delay);
end;
end;
Da die visuellen Komponenten von Delphi nicht threadsafe sind, kann das zu Programmfehlern führen. Siehe dazu auch die Delphi Hilde:
synchronize.