AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte ssFrameWork (StahliSoft - FrameWork)
Thema durchsuchen
Ansicht
Themen-Optionen

ssFrameWork (StahliSoft - FrameWork)

Ein Thema von stahli · begonnen am 20. Feb 2013 · letzter Beitrag vom 23. Mai 2013
 
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.352 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: ssFrameWork (StahliSoft - FrameWork)

  Alt 3. Mär 2013, 20:40
Etwas OT, aber mal zum Thema RTTI:

Ich habe mal Tests bezüglich Geschwindigkeiten durchgeführt. Die RTTI bremst ganz gewaltig.
Wenn man die Funktion sehr häufig nutzt sollte man daher eine Alternative andenken.

Anbei ein kleines FMX-Projekt (Sorry, aber auf VCL lässt sich das ja ggf. auch leicht übertragen.)
Die Formularunit zeigt die verschiedenen Varianten.

Es werden 1Mio Objekte erzeugt und für alle Objkete die Eigenschaft "Value" ausgelesen und neu geschrieben.

Hier die Ergebnisse:
Zitat:
Create OL: 00:00:00.085 - Objektliste
Use OL (Value): 00:00:00.134 - direkte Benutzung der Eigenschaft
Use OL (Func): 00:00:00.239 - Zugriff auf die Eigenschaft über Funktionen
Use OL (Auto): 00:00:00.589 - Zugriff über Funktionen nach automatischer Erkennung
Use OL (RTTI): 00:00:20.688 - Zugriff über RTTI

Create ML: 00:00:00.072 - generische Liste
Use ML (Value): 00:00:00.132 - direkte Benutzung der Eigenschaft
Use ML (Func): 00:00:00.236 - Zugriff auf die Eigenschaft über Funktionen
Use ML (Auto): 00:00:00.583 - Zugriff über Funktionen nach automatischer Erkennung
Use ML (RTTI): 00:00:20.695 - Zugriff über RTTI
Da ich meine BL-Klassen automatisch erzeugen lasse, werde ich den Eigenschaftszugriff über entsprechende Funktionen realisieren.
Im Ergebnis geht das schneller. Mehr Schreibarbeit ist (durch das automatische Erzeugen der Klassen) damit auch nicht verbunden.
Das Framework kapselt den Zugriff und kann selbst die schnelle Version wählen wenn die Klasse dafür eingerichtet ist und andernfalls die RTTI nutzen.
Angehängte Dateien
Dateityp: zip ProfileRTTI.zip (3,22 MB, 22x aufgerufen)
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:34 Uhr.
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