Einzelnen Beitrag anzeigen

alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#9

Re: TStringlist, THashedStringlist gibts nichts schnelleres?

  Alt 23. Mär 2010, 14:00
Zitat von Franzelchen:
Natürlich gibt es die vielbeschworene Skiplist. Diese würde sogar (vgl. Suchverfahren mit Beispielen) meine Dateigröße abdecken( ca.40 000 Datensätze) aber wie verwende ich die Skiplist. In allen Beispielen wird die Skiplist mit Zufallsstrings aufgefüllt aber nie mit echten Daten.
Wo ist denn da nun bitte der Unterschied?
MyList.Add(MyKeyString, MyData) Wo ist eigentlich dein Problem? Selbst 40.000 Datensätze sind doch in Null,Nix eingelesen über eine TStringlist eingelesen. Der Zugriff erfolgt auch schnell genug, und selbst die Suche in einer sortieren Stringlist wäre doch kein Problem, oder?

Zeig uns doch mal den Code, bei dem Du Performanceprobleme bekommst.

Wenn Du noch eine Nanosekunde rausholen willst, dann vergiss die TStringlist und verwende ein ARRAY OF STRING. Das vermeidet den Umweg über einen Getter-Aufruf. Aber verwende keine dynamischs Array weil das ja wieder erst umständlich und performancefressend dereferenziert werden muss

Delphi-Quellcode:
Type
  TTheMotherOfAllSchnelleStringZugriffe = ARRAY [0..39999] OF STRING;
Oder geht es noch schneller?
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat