Buenas!
Tengo una pequeña duda, tengo un a funcion de tipo TQuery en una dll que funciona pero al fijarme el administrador de tareas me di cuenta que nunca libero la conexion, por lo tanto creo y creo conexiones innecesarias y consumo memoria extra.
Código Delphi
[-]
Function Query(const DB:string; SQLConsult:String; Execute:Byte):Tquery; stdcall;
begin
Result:=TQuery.Create(nil);
with Result do
begin
DatabaseName:=DB;
SQL.Add(SQLConsult);
case Execute of
1: Active:=true;
2: begin
Open;
First;
end;
3: ExecSQL;
end;
end;
end;
En la forma en la que hecha retorna un query correctamane pero jamas lo cierra o libera, obiamente todo esto se soluciona creando una variable de tipo TQuery y asginandosela al result al final de la funcion, pero el lio es tratar de hacerlo sin crear la variable