Einzelnen Beitrag anzeigen

Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.338 Beiträge
 
Delphi 11 Alexandria
 
#35

Re: Tricks um Programm zu beschleunigen

  Alt 19. Dez 2005, 15:10
Dann testet doch mal eure Routinen, indem ihr alle 1000 Durchläufe eine Exception auslöst. Das dürfte ganz erhebliche Performance einbußen bringen. Baut doch einfach mal eine Division durch Null ein:
Delphi-Quellcode:
Var
  c,i : Cardinal;
  r : Real;

begin
  c := getTickCount;
  r := 0;
  For i:=1 to 20000000 do
  begin
    if (i div 1000) = (i/1000) then
      r := r
    else
      r:=r+r/i;
  end;
  memo.Lines.Add(intToStr (GetTickcount - c));
  c := getTickCount;
  r := 0;
  For i:=1 to 20000000 do
  begin
    try
      if (i div 1000) = (i/1000) then
        r := r / 0;
      else
        r:=r+r/i;
    except
    end;
  end;
  memo.Lines.Add(intToStr (GetTickcount - c));
end;
Habe das jetzt nicht bei mir geprüft, aber das Ergebnis sollte deutlich sein.

@alzaimar:
Hier gehts doch nicht um Übersichtlichkeit.
Peter
  Mit Zitat antworten Zitat