![]() |
AW: Delphi 2009 - Programm hängt manchmal beim beenden
Ich habe ein ähnliches Problem, aber ohne Verwendung von Datenbankkomponenten. Es sind zwar eine Reihe von Komponenten mit dabei (JVCL, Andorra2D, etc.) - aber der Fehler ist auch nicht wirklich reproduzierbar. Manchmal beende ich das Programm und dann hängt Delphi und es dauert teilweise 20 Sekunden, bis der Debugger den Prozess wirklich schließt und Delphi wieder reagiert. Starte ich das Programm danach erneut und mache genau das gleiche kann es sein, dass es zu keinem Hänger kommt.
Wie würdet ihr so einen Fehler finden? Es bremst einen wirklich übelst beim Programmieren... Edit: Habe auch mal alle .dcu-Dateien etc. gelöscht -> kein Effekt |
AW: Delphi 2009 - Programm hängt manchmal beim beenden
*Push*
Bin bisher nicht weitergekommen - hat keiner eine Idee? |
AW: Delphi 2009 - Programm hängt manchmal beim beenden
Hallo Codewalker,
auch wenn der Fehler nicht zu reproduzieren ist, musst Du ihn irgendwie eingrenzen. Oder hängt Dein Programm auch, wenn Du gar nichts tust? Unter welchen Umständen tritt das Problem auf? Tritt es auch ohne Delphi auf? Wenn Du einen bestimmten Codeblock im Verdacht hast, versuche ihn mal wegzulassen oder mit anderem Code zu ersetzen oder natürlich zu debuggen. Dann wirst Du dem Problem schon auf die Spur kommen. :) Benutzt Du eigene Pointer? Wenn Delphi solche "Kunstpausen" macht, war es bei mir schon häufig so, dass ich irgendwo ganz übel im Speicher rumgemalt hatte. 8-) Grüße, Uwe |
AW: Delphi 2009 - Programm hängt manchmal beim beenden
Zitat:
Zitat:
Zitat:
Zitat:
Ich werde einfach mal in alle Units im finalization-Abschnitt ein OutputDebugString einbauen und dann mal sehen, wo ich überall ankomme. Evtl. hilft das weiter. :glaskugel: |
AW: Delphi 2009 - Programm hängt manchmal beim beenden
Das Problem habe ich auch manchmal...eine definierte Lösung habe ich dafür auch noch nicht gefunden.
Ich weiss nur, woran es ungefähr liegt, falls es bei dir auch um eine 3D-Applikation geht: Manchmal braucht der Treiber der Grafikkarte irgendwie unverschämt lange, um den Rendering Context zu deaktivieren. Manchmal ja, manchmal nein. Ich habe bei mir das ganze schonmal runtergetrackt und gesehen, dass da anscheinend noch der Graka-Treiber Aufräumarbeiten tätigt, und das bei mir teilweise bis zu einer Minute!!! Ich würde das auch gerne loswerden, da es wirklich nervt! Allerdings habe ich festgestellt, dass das teilweise auch bei kommerziellen Spielen auftritt, dass es ewig dauert, bis das Spiel endlich beendet wird. |
AW: Delphi 2009 - Programm hängt manchmal beim beenden
:thumb: Das klingt treffend. Ich habe das in zwei Projekte, eines mit Andorra (definitiv mit 3D-Beschleunigung) und in einer Filmverwaltung mit CoverFlow (von TMsSoftware), dass auch eine DirectX-Surface nutzt. Von daher könnte genau dass bei mir auch die Ursache sein.
Einerseits beruhigt es mich ja, dass ich keinen Blödsinn programmiert habe, aber andererseits kann man dagegen auch nichts tun. Vielen Dank für den Hinweis |
AW: Delphi 2009 - Programm hängt manchmal beim beenden
Zitat:
Und die Speicherfreigabe am Programmende kann manchmal arg lange dauern Gruß K-H |
AW: Delphi 2009 - Programm hängt manchmal beim beenden
Halle Codewalker,
na ja, wenn es tatsächlich mit den Treibern der Grafikkarte zusammenhängt, könnte man ja mal verschiedene Treiber durchtesten und schauen ob sich das Verhalten ändert. :) Ich habe mal 'nen Sudoku-Pseudo-Solver gebaut, der bei manchen Lösungsansätzen auch noch ewig nach der Lösung "rumgemacht" hat. Mehr als 10 Sekunden waren das aber nie und das waren offenbar nur Aufräumarbeiten, die Delphi durchgeführt hat, wenn viele Objekte gelöscht werden. Kann also auch ohne 3D-Kram passieren. ;) Grüße, Uwe |
AW: Delphi 2009 - Programm hängt manchmal beim beenden
Ich habe auch öfters einmal, wenn ich den ganzen Tag programmieren und debugge, dass sich D2009 aufhängt. Dann kommt manchmal beim Speichern eine Meldung und danach geht gar nichts mehr. Dann heißt es nur noch Windows runterfahren und neu starten in der Hoffnung, dass vorher alles gesichert war. Letzten Sonntag war es wieder so weit. Wie gesagt, habe ich D2009 und TMS und nun ein wenig getestet mit Firebird und IB. Ich muss wahrscheinlich dann Mittags mal Runterfahren und neu starten. Dann hält es meistens bis zum Abend durch.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:31 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz