Einzelnen Beitrag anzeigen

Benutzerbild von Michael Habbe
Michael Habbe

Registriert seit: 10. Aug 2005
264 Beiträge
 
Turbo Delphi für Win32
 
#23

Re: CPU Auslastung für ein Programm begrenzen

  Alt 18. Jul 2006, 16:57
Wenn Andreas nun nicht die 63.000 Datensätze erwähnt hätte, ich bin rein rechnerisch auf 72.817 gekommen. Und das ist schon eine ganze Menge, wenn man eine Textdatei zeilenweise einliest. Wobei ich (ein wenig) bezweifle, dass die Methode SL.LoadFromFile wie xaromz schrieb schneller ist.
Wird hier jede einzele Zelle über OLE an Excel übergeben? Ich habe damit noch nicht gearbeitet Würde mich dann nicht wundern, wenn der Performanceverlust daher rührt.

Das Application.ProcessMessages und ProgressBar.Position muss auch nicht jeden Durchlauf ausgeführt werden. Hier reicht es, wenn man der Counter ausgewertet wird und dann z.B.
Delphi-Quellcode:
  if RowCounter mod 100 = 0 then
  begin
    Application.ProcessMessages;
    ProgBar2.Position := RowCounter;
  end;
ausführt.

Zum Thema Threads: würde ich hier auf keinen Fall verwenden. Der Aufwand für die Entwicklung ist ungleich höher, da es so aussieht, als wenn das Programm "nur" die Excel-Tabelle erstellt. Und da wären Threads wohl die Kanonen auf Spatzen. Wenn ein ganzes Verzeichnis mit Dateien konvertiert werden soll, könnte sich das schon rentieren (Stichwort DualCore)

mfg
Michael
  Mit Zitat antworten Zitat