MidasLib.dcu hace que la aplicación sea más lenta
Estoy declarando a MidasLib para evitar el infierno causado por Midas.dll en algunos clientes.
El siguiente código se ejecuta en unos 2350ms. ¡Si elimino la declaración de MidaLib en usos, comienza a ejecutarse en solo 45 ms!
El archivo data.xml se guardó con el método TClientDataSet.SaveToFile, tiene 5000 registros y su tamaño es de aproximadamente 600Kb.
¿Alguien sabe cómo explicar este extraño comportamiento?
Puedo confirmar el problema en Delphi XE2 upd 3 y en Delphi XE3 upd 2.
Gracias.
program Loader;
{$APPTYPE CONSOLE}
{$R *.res}
uses
MidasLib,
System.SysUtils,
Winapi.Windows,
Data.DB,
Datasnap.DBClient;
var
cds : TClientDataSet;
start, stop : Cardinal;
begin
cds := TClientDataSet.Create(nil);
try
start := GetTickCount;
cds.LoadFromFile('c:\temp\data.xml');
stop := GetTickCount;
Writeln(Format('Time elapsed: %dms', [stop-start]));
finally
cds.Free;
end;
end.