Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi FastMM und Runtime-Packages (https://www.delphipraxis.net/212111-fastmm-und-runtime-packages.html)

Sisko 20. Dez 2022 10:38

FastMM und Runtime-Packages
 
Ich habe eine Anwendung die neben dem EXE mehrere Packages und DLL's verwendet. Alle Teilprojekt sind mit Runtime-Packages gelinked. Dadurch kommt nur ein einziger MemoryManager zum Einsatz.
Zu Diagnosezwecken (Leak-Detection) will ich nun FastMM mit seinen diversen Debugmöglichkeiten einsetzten.
Das Problem ist jetzt nur, dass ich FastMM nur im Anwendung-DPR und den DLL-DPR's als erste "Uses"-Zeile auflisten kann.
Leider kann ich die Ladereihenfolge der Runtime-Packages nicht beeinflussen und FastMM reklamiert beim Initialisieren, dass bereist eine Speicherallokation stattgefunden hat.

Hat jemand eine Idee wie ich dafür sorgen kann, dass FastMM wirklich als erstes initialisiert wird?
Könnte ein Runtime-Package helfen das nur den FastMM benutzt? Aber wie kontrolliere ich dann die Ladereihenfolge der Packages (RTL, dann FASTMMPack, dann der Rest)?

P.S. Ich würde nur ungern die RTL selbst neu compilieren ;-)

Gruss
Peter

himitsu 20. Dez 2022 11:16

AW: FastMM und Runtime-Packages
 
Versuch mal:
* als erste Unit eine eigene Lade-Unit die FastMM-Units, bzw. eine eigene LadeUnit
* FastMM und diese Unit in ein Package, welches nur die RTL requird
* dann sollte FastMM als Erstes geladen werden




Ja, für sowas wie Speichermanager nd ExceptionHandling wäre es schön, wenn im Delphi (RTL) ein Code drin wäre, der nicht über Units, sondern aus den Ressourcen derartige Einbindungen auslesen und laden könnte.
Ressourcen werden "irgendwann" später eingebunden, aber direkt im RTL-Code könnte bei der Initialisierung, noch vor allem Anderen, dieses zur Laufzeit ausgelesen werden, um entsprechende BPL oder DLL zu laden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:48 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