Einzelnen Beitrag anzeigen

Bodenseematze

Registriert seit: 10. Jul 2023
68 Beiträge
 
#12

AW: Ursache für hängende Applikation herausfinden

  Alt 30. Jan 2024, 10:09
Das sieht dann wirklich so aus, als würde sich in genau diesem Programm irgendwas "verstubbeln".
Ja
Wenn alles in allen Programmen gleich ist, vom Quelltext (der betroffenen Routine(n)), über den Rechner bis zur Datenbank über die Freigaben und alle weiteren Resourcen, da müsste man dann wohl mal in die Source schauen können, um Hilfestellung geben zu können.
Der Quelltext ist derselbe, die Datenbank ist die selbe und der pronzipielle Ablauf für den Fehlerfall sind gleich - die Programme kopieren allerdings unterschiedliche Dateien (aus dem selben lokalen Quellverzeichnis in ein jeweils selber generiertes temp. lokales Verzeichnis)...

Mit den Quellen ist das so eine Sache - mal abgesehen davon, dass die Quellen wohl etwas zu viel wären, darf ich diese nicht so ohne weiteres (komplett) rausgeben.
Und nur Teile bringt vermutlich nicht allzu viel...

Wie lange "hängt" das Programm dann? Kommt irgendwann eine Meldung oder tut sich irgendwann etwas?
Wenn ich Freeze-Erkennung in MadExcept nicht einschalte, hängt das Programm "ewig".

- Endlosschleife irgendwo
Ich denke, das hätte ich über MadExcept gesehen...
- Dialog oder Fenster im Hintergrund oder außerhalb des Bildschirms
Um solche Dinge auszuschließen habe ich extra beim Kopieren die Flags (NoConfirm, NoGui, etc.) entfernt - aber ausschließen kann ich das natürlich nicht.

- warten auf ein timeout (MSSQL Server und Locks!)
Das will ich natürlich nicht ausschließen, habe aber bereits auf dem SQL-Server mal mitgetraced und nichts auffälliges gefunden.
- rekursion ohne ende
Auch das müsste ich eigentlich bei der MadExcept "Freeze-Erkennung" gesehen haben....

Das sollte klar sein, aber zur Sicherheit frage ich einfach mal. Du greifst im Thread nicht auf irgendwelche VCL-Komponenten zu, oder?
Nicht, dass ich wüßte

Und interessant wäre der komplette MadExcept Bericht, denn wenn da ein Deadlock im Spiel ist, braucht man die Stacktraces aller Threads. Du kannst den ja zensieren oder nur privat schicken.
Ich schicke ihn Dir mal per privater Mail...
  Mit Zitat antworten Zitat