Einzelnen Beitrag anzeigen

TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.070 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Debugger hält beim Programmende in CPU-Fenster

  Alt 26. Nov 2019, 10:36
Delphi-Quellcode:
...
{$IFDEF USE_LIBICU}
  LibICUSuffix := '';
{$ENDIF}
{$IFDEF WEAKREF}
  InstHashMap.Finalize; // <---- Ersten Breakpoint drauf!
{$ENDIF}

{$IF defined(MSWINDOWS) or defined(OSX32)}
  {Uninitialize the default memory manager, and free all memory allocated by
   this memory manager.}

  FinalizeMemoryManager; // <---- Zweiten Breakpoint drauf!
{$ENDIF}
end.
Gehe mal in der System.pas gaaaanz runter bis zum finalization und kloppe mal die Breakpoints wie oben beschreiben rein und beende dein Programm ganz normal.
Wird der erste Breakpoint angesprungen und das CPU-Fenster ist noch nicht offen -> F9.
Geht dann vor dem zweiten Breakpoint das CPU-Fenster auf, dann alles nochmal auf Anfang!

Beim nächsten Beenden bis zum bitteren Erbrechen TInstHashMap.Finalize und die einzelnen TInstBucket.Finalize sowie TInstItem.Free Einträge durchsteppen und mit schlauen Hingucken den Übeltäter identifizieren.
Tritt das Problem immer bei den gleichen Indizes der Schleifen auf?
Immer weiter eingrenzen, irgendwo findest du dann den Übeltäter und kannst die Ursache dingfest machen!


Zusatzfrage: Bei dem Kollegen tritt das auch auf?
  Mit Zitat antworten Zitat