Datagrid Operationen beschleunigen

  • VB.NET

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von INOPIAE.

    Datagrid Operationen beschleunigen

    Hmm hoffentlich steinigen mich die echten DB User hier nicht, aber gehören DG Fragen hier hinein ?

    Zum Problem:
    In einem DG muss zwingend jeder Eintrag einer bestimmten Zelle in jeder Zeile mit einem Suchwert verglichen werden (der sich pro Zeile ändert)
    Daher ergibt sich die Anzahl der Iterationen X^X. Die Durchläufe wachsen also mit Zunahme der Zeilen zeitlich ungefähr im Quadrat.
    Praktisch bedeutet dies, dass ich bei 100 Einträgen circa 30 Sekunden für einen Durchgang brauche, bei 1000 Einträgen dauert das Ganze circa 3-4 Minuten.
    Der Algorithmus ist IMHO so , dass es keine weiteren Optimierungen gibt. Jeder Eingriff mit einer neuen Klasse verlangsamt den Prozess derart, das letzlich kein Zeitgewinn dabei herauskommt.
    Das DG habe ich ausgeblendet, was ein paar Prozentchen bringt.

    1.) Meine Frage daher, wie kann ich den Vorgang noch weiter beschleunigen ?

    Übertragung des ganzen in ein Array und die Operationen als Array ausführen ?(Beim Vergleichen finden scheinbar Plattenzugriffe statt, das Array dürfte wohl im Speicher laufen)

    2.) Wenn ja, wie bekomme ich ein DG schnell , in einem Rutsch in ein Array ? Ansonsten verliere ich beim zellenweisen Übertragen wieder Zeit ?

    3.) Wäre der Virtual Mode eine Möglichkeit ? Ich hab den trotz MSN Hilfe nicht so richtig kapiert...

    Hoffe jemand erbarmt sich und hilft mir aus der Sackgasse.. ;(