Entwickler-Ecke

Sonstiges (Delphi) - Wie kann ich Einfrieren meines Programms provozieren?


matthew77 - Fr 10.08.18 08:52
Titel: Wie kann ich Einfrieren meines Programms provozieren?
Hallo,
ich habe ein Programm, dass alle paar Stunden einfriert. Der Taskmanager erkennt es als "reagiert nicht". Ein quick & dirty fix wäre jetzt, diesen Zustand mit einem anderen Programm zu erkennen, das Programm abzuschießen und wieder neu zu starten. Dazu wollte ich erst mal ein Testprogramm schreiben, welches per Knopfdruck in den "reagiert nicht" Modus kommt. Ich habs mit einer Endlosschleife probiert aber das klappt nicht (CPU Leistung geht hoch, Programm gefriert tatsächlich aber der Taskmanager erkennt es nicht als eingefroren. Hat einer eine Idee?

Danke!


matthew77 - Fr 10.08.18 09:23

äh, falscher Alarm. Die Endlosschleife tut hier doch ihren Dienst - ebenso wie ein langes "Sleep". Habe ein Programm gefunden, mit dem sich das automatische Neustarten einfach bewerkstelligen lässt: es heißt "Restart on crash" und ist hier erhältlich:
https://w-shadow.com/blog/2009/03/04/restart-on-crash/


jaenicke - Fr 10.08.18 11:24

Eurekalog bietet z.B. die Möglichkeit solche Hänger in der eigenen Anwendung zu erkennen und zu loggen.