Hallo zusammen,
ich habe mir ein aufwendiges Perl Script geschrieben, welches leider nach ca. 20-50 Minuten einen Hänger hat und immer einfriert. Auch nach ausführlichsten Tests konnte der Fehler nicht behoben werden. Das Script berechnet mir diverse Daten und muss ca. 3 Monate durchlaufen. Den Ablauf werde ich hier nicht weiter beschreiben.
Da ich das Script auch über Nacht laufen lassen möchte und nicht ständig kontrollieren kann, muss nun eine Lösung her, welche das Script automatisch beendet und neu startet. Ich habe es so umprogrammiert, dass es dann an alter Stelle wieder weitermacht.
Bislang habe ich die Ausgabedateien nach Datum (Uhrzeit) untersucht und konnte so feststellen, wann das Script hängt. (Spätestens nach 5 Minuten keine Datumsveränderung an der Datei war hier schon ein Indiz). Dann habe ich unter WinXP unter TaskManager den Prozess perl.exe manuell beendet und das Script anschließend neu gestartet.
Nun hier meine Frage: gibt es eine Möglichkeit, vielleicht durch ein 2. Perl Script, ein anderes beliebig zu starten und nach x Minuten zu beenden und neu zu starten?
Oder kennt vielleicht jemand ein Windows Programm, welches ermöglicht, ein anderes Programm zu starten und nach x Minuten zu beenden (der Prozess perl.exe eben) und dann neu zu starten?
Ich wäre für Hilfe seeeehr dankbar!!!
MfG Master Flo.
User since
2003-08-07
2921
Artikel
BenutzerIn
Nun, du könntest aus dem Script heraus dass immer einfrietr in einem vernünftigen Intervall (20min?) das Script nocheinmal statren und dabei das ausführemde Script beenden.
Das hat natürlich den Nachteil, dass das Script auch mindestens 20min laufen muss...
User since
2003-11-28
3645
Artikel
ModeratorIn
Unter Unix wuerde man das mit fork und kill machen. Unter Windows geht es vielleicht (!) auch mit den pseudo-forks.