Como faço para parar um thread antes de terminar a execução?

Eu tenho um segmento chamado TMyThread e eu sobrescrever o procedimento de execução como este:

 procedure TMyThread.Execute;
 Begin
     repeat
     //Some Work 
     Sleep(5000);
     //Some Work 2;
     Sleep(5000); 
     until FActive=False
 End;

No formulário principal eu tenho o botão chamado 'Destroy My Thread'. Eu quero destruir o meu thread, mas o problema é que o meu thread será destruído apenas se terminar o seu trabalho. Eu quero destruir o meu segmento, mesmo que não tenha terminado o seu trabalho. Como eu faço isso?

questionAnswers(3)

yourAnswerToTheQuestion