Alternativ, kannst du auch an das Ende der Execute-Methode Free schreiben, aber das dürfte dann auch auf "FreeOnTerminate" hinauslaufen.
Es sei denn man sichert es nicht via Try-Finally ab und es tritt im Thread eine
Exception auf.
Die gesamte Execute-Methode wird intern über Try-Finally abgesichert, damit eine korrekte Freigabe möglich ist und Destroy beim FreeOnTerminate wirklich aufgerufen wird.