Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Leistung eines Programms (https://www.delphipraxis.net/127321-leistung-eines-programms.html)

Bernhard Geyer 11. Jan 2009 11:20

Re: Leistung eines Programms
 
Zitat:

Zitat von vsilverlord
ich hab an der Berechnung nichts verändert, nur die units ausgelagter.

Du hast deine Funktionalität in mehrere Funktionen zerlegt. Werden die Funktionen oft mit vielen Parametern aufgerufen und dann auch dort noch Strings oder Records verwendet?

SirThornberry 11. Jan 2009 11:29

Re: Leistung eines Programms
 
Hast du nur Funktionen von einer Unit in eine andere verschoben oder hast du eine Funktion in mehrere zerlegt? Wenn zweiteres der Fall ist - hast du mal versucht ob es mit inline schneller ist?

mkinzler 11. Jan 2009 11:30

Re: Leistung eines Programms
 
Im Zweifel lagere diese nur in andere Dateien aus, welche du dann inkludierst.

vsilverlord 11. Jan 2009 12:21

Re: Leistung eines Programms
 
Zitat:

Du hast deine Funktionalität in mehrere Funktionen zerlegt. Werden die Funktionen oft mit vielen Parametern aufgerufen und dann auch dort noch Strings oder Records verwendet?
JA! Viele Parameter. Oft riesige arrays von records mit einigen Currencys.
-> Soll ich die Funktionen zurücklagern?
Die Klassen hab ich auch ausgelagert. Zurücklagern?
Ein Grund für das Auslagern ist außerdem, dass ich sie in anderen Programmen auch mitbenutzen kann. Das hat sich wohl damit erledigt =(
:|

SirThornberry 11. Jan 2009 12:23

Re: Leistung eines Programms
 
Wenn du es in extra funktionen gepackt hast und immer riesige Daten diesen übergibst ist es klar. Denn beim Aufruf von Funktionen wird ja der Stack mit den Parametern bepackt und beim Zurückkehren wieder geleert.
Könntest du das ganze eventuell in eine eigene Klasse packen, dann kannst du auf die Parameter verzichten und verwendest an stelle dessen member.

jfheins 11. Jan 2009 12:25

Re: Leistung eines Programms
 
Übergebe nicht riesige Array of record - das ist langsam.

Entweder du kapselst die Arrays in eine Klasse, dann wird automatisch nur ein Pointer übergeben.

Oder du definierst einen Pointer auf das Array und übergibst den.

Oder am einfachsten: Du schreibst const/var vor den Parameter um ihn per Referenz zu übergeben ;)

3_of_8 11. Jan 2009 12:26

Re: Leistung eines Programms
 
Beschreibst du diese Arrays und Records denn in deinen ausgelagerten Funktionen? Wenn nein, sollten sie eigentlich nicht kopiert werden, häng mal ein const davor, wenn ja, sollen diese Änderungen sich auf die übergebenen Originale auswirken bzw. dürfen sie es? Wenn ja, ändere den Parametertyp mal in "var" um.

mkinzler 11. Jan 2009 12:26

Re: Leistung eines Programms
 
Wie gesagt, dürfte das Auslagern nicht der Hauptgrund zu sein. Aber ohne weitere Angaben, verkommt dieser Thread zu einem weiterem Hellseherthread.

vsilverlord 11. Jan 2009 12:30

Re: Leistung eines Programms
 
member? das ist mir jetzt zu hoch. :cry:

mkinzler 11. Jan 2009 12:34

Re: Leistung eines Programms
 
Dann wäre ein Studium von Grundlagentutorials zur OOP deinerseits in Erwägung zu ziehen


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:06 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz