para evitar ese cuelgue quizás puedas editar tu hebra de la siguiente forma:
Código Delphi
[-]
type
TMainform = class(TForm)
....
TMyThread = class(TThread)
private
ejecutar: integer;
protected
procedure Execute; override;
public
end;
....
Código Delphi
[-]
procedure TMyThread.Execute;
begin
repeat
....
if ejecutar=10 then
begin
ejecutar := 0;
end
else
ejecutar := ejecutar +1;
Sleep(6000);
until Terminated;
end;