Hallo,
Bei einem Abkömmling von TThread läuft die Execute-Methode in einem seperaten Thread ab. Der Thread wird beendet, sobald diese Methode fertig ist. Wenn du einfach irgendwelche Funktionen dieser Klasse aufrufst, die du selbst definiert hast, dann laufen diese im Kontext der Haupthreads ab.
Ich geh jetzt mal davon aus, dass das dein Problem ist. Da du den Thread nicht suspended (inherited Create(true)) erzeugst, muss es
IMHO so sein.