![]() |
Speicherverbrauch einzelner Componenten anzeigen ...
Hallo Leute,
Irgendwo in meiner Software ist der Wurm drinn ;-) FBserver 2.1.3 <-> Zeos 6.6.6 <-> Delphi 7 Anwendung Umso länger die Software läuft, umso mehr Speicher wird im Taskmanager angezeigt .. fängt mit 17 MB an und kommt nach 10 Stunden auf 700MB.. Eigentlich wird alles, was zur Laufzeit erzeuigt wird, wieder freigegeben. (Fenster, Labels,Querys ect..) Aber irgendwas wird anscheinend nicht freigegeben ... und ich find´s nicht ! Hab mir schon einiges von ![]() Gibt es ein Tool, das folgende Möglichkeit bietet? Auflistung der einzelnen Componenten inkl. Speicher zur Laufzeit:
Delphi-Quellcode:
Vielen Dank
Software.exe - Form1 (1300 KB)
|_ Label1 (1400 KB) |_ Label2 (1300 KB) |_ Panel 1 (1400 KB) |_ Edit1 (1700 KB) |_ Memo1 (1100 KB) |_ TZQuery1 (2370.000KB) Erich |
Re: Speicherverbrauch einzelner Componenten anzeigen ...
Nach Komponenten aufzuschlüsseln dürfte witzlos sein, da der größte Teil des Speicherverbrauchs nicht-visuell ist.
Hol die lieber FastMM oder so, und lass dir die Memoryleaks anzeigen. |
Re: Speicherverbrauch einzelner Componenten anzeigen ...
Sowas ist eh nicht ganz so einfach, da in der VCL viele Dinge nur nur von einer Komponente genutzt werden.
Ich würde erstmal FastMM, MemProf oder dergleichen ins Programm integrieren und mal nach Speicherlecks ausschau halten. [edit] oh, wo kommt denn jfh plötlich her :shock: |
Re: Speicherverbrauch einzelner Componenten anzeigen ...
Vielen Dank himitsu und jfheins :-)
Werd mich mit memProof noch mal beschäftigen ... FastMM494 hab ich .. aber bin ehrlich gesagt, nicht schlauer geworden .. Schönen Feiertag Erich |
Re: Speicherverbrauch einzelner Componenten anzeigen ...
Hallo,
bei D7 geht auch MemCheck ![]() Als 1. Unit in der dpr einbinden, MemChk (oder so ähnlich) als ersten Befehl rein. Anwendung laufen lassen, nach dem Benede bleibt MemCheck beim 1. MemLeak stehen, per Ctrl+F2 zeigt er dir alle Leaks an. Am besten mit externen Debug-Symbolen und Stack-Frames compilieren, ist aber auf der HP beschrieben. Heiko |
Re: Speicherverbrauch einzelner Componenten anzeigen ...
Ach ja, all diese Test-Codes prüfen nur auf Speicherleckt, welche über den Delphi-Speichermanager laufen.
Wenn sich etwas direkt bei Windows (z.B. VirtualAlloc) Speicher holt, dann fällt dieses nicht auf. Was zeigt denn ![]() PS: Eventuell könnte dieses auch nur die krasse Auswirkung einer Speicherdefragmentierung sein. (aber wir kennen ja dein Programm nicht und wissen vorallem nicht was wie oft gemacht wird) |
Re: Speicherverbrauch einzelner Componenten anzeigen ...
Hallo,
meistens sind es aber gerade eigene Programm-Fehler, die sich hier sehr schön finden lassen. Laß ihn doch erst einmal die Haupt-Leaks (seine eigenen ;) ) finden. Heiko |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:25 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