Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.016 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#2

AW: Wie erkenne ich eigentlich ein Memory-Leak?

  Alt 8. Feb 2015, 22:50
Mit der Methode wirste nix finden. Denn ein Memory leak überlebt auf nem Windows mit NT Kernel nicht mehr die Dauer eines Processes (das war mal zu 95 oder 98 Zeiten so als nen fehlerhaftes Programm mal ebend deine komplette Windows Session zerhauen hat - aber jeder Boot tat gut)

Heutzutage lebt es also nur solange, wie dein Programm auch läuft. Ist aber schlimm genug, wenn du entweder nach einigen Stunden irgendwann in deinem 32bit Programm an die Speichergrenze kommst und es dir mit Fehlern weghagelt oder dein System nichts mehr für die anderen Prozesse übrig hat.

In neuen Delphi Versionen kannst du relativ einfach mit einem beherzten ReportMemoryLeaksOnShutdown := True; beim beenden einen Report bekommen, ob irgendwas im Verlauf deiner Anwendung nicht korrekt freigegeben wurde.

Für erweiterte Diagnose empfiehlt sich, die FastMM4 im full debug mode laufen zu lassen - siehe dazu z.B. diesen Artikel (und in den Kommentaren dort gibts auch noch den Link zu ner Coderage Session dazu)
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat