Napisałem sobie taki wątek :

Tsendmail = class(TThread)
  procedure pobierzmail(var adres:string); //pobira adres mail z pliku
  procedure pobierzzaloncz(var IdMessage1: TIdMessage); //tworzy załączniki 
  procedure usunrecord(var XML:TXMLDocument); //usuwa rekord w xml
  procedure wyslijmail; - //wysyła pocztę
  private
    { Private declarations }
  protected
    procedure Execute; override;
  public
  XMLmail: TXMLDocument;
  Status :BOOLEAN;
  adres:string;
  IdSMTP1: TIdSMTP;
  IdMessage1: TIdMessage;
  liczbazal:integer;
   end;

Tu Execute :

procedure tsendmail.Execute;
var
i:integer;
begin
FreeOnTerminate := True;
Coinitialize(nil);
XMLmail:=TXMLDocument.Create(application);
IdMessage1:=TIdMessage.Create(application);
IdSMTP1:= TIdSMTP.Create(application);
form2.blad:=false;

setpathmail; - operacje na xml i idmesage,idsmtp i plikach rekordowych, wewnątrz również następuje  wywoływanie innych procedur procedur wątku
wyslijmail; - operacje na xml i idmesage,idsmtp i plikach rekordowych, wewnątrz również następuje  wywoływanie innych procedur procedur wątku, między innymi dla załączników usuwania pozycji w xml itp... 

IdSMTP1.Free;
idsmtp1:=nil;
IdMessage1.Free;
IdMessage1:=nil;
XMLmail.Active:=false;
XMLmail.Free;
XMLmail:=nil;
end;

Wątek wywołuję tak :

wyslijp:=tsendmail.Create(false);

I mam z nim taki problem że nie wiem dla czego nie zwalnia mi pamięci po jego zakończeniu, jak patrzyłem w managera procesów Windowsa cały czas po wykonaniu wątków zajętość procesu w ram aplikacji zwiększa się, jest to aplikacja pisana na serwer więc kiedyś może się zapchać ram, a przecież zwalniam wszystkie komponenty i więcej struktur dynamicznych w tym nie man, może ten XML źle zwalniam ?? Wszystkie pliki rekordowe i tekstowe zmykam closefile(), zmienne mam zadeklarowane lokalnie w procedurach wiec chyba są zwalniane po zakończeniu działania mam tylko parę zmiennych globalnych dla formy, modyfikowanych przez wątek ale one zazwyczaj przyjmują wartość 0, lub są typu bool. Jeśli możecie rzucić okiem na powyższy kod byłbym wdzięczny za pomoc ??