Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.745 Beiträge
 
Delphi 12 Athens
 
#5

AW: Delphi 12.3 mal wieder verreckt

  Alt 8. Sep 2025, 18:40
Delphi nutzt für Named-Threads eine Exception und nichtmal das Programm selbst merkt sich den Namen.
Reagiert niemand auf diese Exception und speichert sich das, oder hängt man sich erst später dran, ist der Name verloren.
Windows bietet seit sehr vielen Jahren eine API dafür, worüber man den gesetzten Namen später und auch von extern abfragen kann.

Nja, ich Debugge die IDE auch nicht permanent (wäre auch zu nervig, Aufgrund der vielen unnötigen Exceptions)
und hänge mich eben erst dran, nachdem es geknallt hat.

Das hängende Synchronize kann auch ein Folgefehler sein, weil ja der Mainthread nicht mehr reagiert.
Dennoch kann es auch sein, dass der Mainthread auf diesen Thread wartet und jener gleichzeitig auf den Mainthread.

Es war mal möglich CriticalSections zu loggen, bzw. sie loggen sich selbst,
aber seit Embarcadero immer mehr auf TMonitor setzt (das eine TMonitor, nicht das Andere ), ist es damit leider vorbei.
Gerade hier hätte die Sperre im Speichermanager mit CriticalSections die Möglichkeit geboten zu sehen wer wann wo wartet und wer das wann und wo gesperrt hat, aber es sind nunmal keine CS.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat