Hi,
Ist bei dieser Schleife noch eine Optimierungsmöglichkeit, denn ich hab das Problem, dass die ganze Aktion bei 30.000 Einträgen 10 Minuten dauert.
Das ganze läuft in einem Thread und dient dazu alle Strings aus DestList auszusortieren die in SourceList nicht vorhanden sind.
Delphi-Quellcode:
for i := 0 to SourceList.Count - 1 do
begin
if not Terminated then
begin
iFindResult := DestList.IndexOf(SourceList.Strings[i]);
if iFindResult <> -1 then
begin
// Zu einer dritten Liste hinzufügen
end;
end
else
begin
break;
end;
end;
Ich vermute IndexOf sucht auch mit einer Schleife nach dem String, das wären dann
IMHO 900.000.000 Operationen.
[Edit]Formatierung geändert[/Edit]