Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

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

AW: MemoryLeak mit madExcept

  Alt 21. Nov 2016, 16:55
Schaut aus, als ob in madExcept.HandleCreateThreadHook was nicht wieder freigegeben wird. Da im Callstack keine Zeilennummer steht (nimm evtl mal debugsymbole für die unit rein und lass sie neu kompilieren - einfach die madExcept.pas explizit dafür ins Projekt aufnehmen, sonst nutzt er die dcu von der madCollection Installation).

Ich würd ja raten, dass es der Speicher vom VirtualAlloc ist (SizeOf(tti^) sollten 12 Byte sein), allerdings fügt PatchPtr weiter unten das in eine Liste ein, die im FreePatches, was im finalization aufgerufen wird, wieder freigegeben wird durch VirtualFree. Eventuell dort mal durch debuggen, obs da irgendwo hakt.

Edit: Nachdem ich Primož Gabrijelčič gefragt habe, kann ich sagen, dass es nicht das VirtualAlloc ist, das wird von FastMM nicht gehooked und somit werden mögliche Leaks daraus nicht erkannt. Scheint also was anderes zu sein. Zusätzliche Debuginfo im madExcept könnte aber den Callstack etwas verbessern, um die Ursache möglicherweise zu finden.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie (21. Nov 2016 um 16:59 Uhr)
  Mit Zitat antworten Zitat