Hallo, Am Montag, 30. Juni 2003 22:09 schrieb Joerg Rossdeutscher:
Hmmm... betrachten wir mal die Alternativen. Das Programm läuft mehrere Tage Nonstop, um der Datenflut Herr zu werden. Es darf nicht abgebrochen werden.
Der SegFault führt dazu, daß mit der nächsten Datei weitergearbeitet wird, die Ressourcen der auslösenden Datei werden nicht weiter genutzt, der Segfault wird ja bemerkt. Diese Ressourcen werden vermutlich "angeschossen" zurückbleiben, das sollte aber von der Menge her vertretbar sein. Da sie nicht mehr genutzt werden, sollten sie nichts mehr anrichten.
Natürlich wäre das beste, ImageMagick würde nicht wegbrechen, aber ehrlich gesagt halte ich für völlig unmöglich, alle Fehler bei der Interpretation einer Fontdatei abzufangen, das ist höllisch komplex.
Was gäbe es denn noch für Methoden, ein Programm, das sehr viele Daten verarbeitet zu hindern, mittendrin an unverwendbaren Files wegzubrechen?
Wie wär's mit einem kontrollierendem Prozess, der das eigentliche Pragramm im Auge behält und dieses erneut startet falls es an einem kaputten Font gescheitert wäre. Das eigentliche Programm müsste nur seine Ergebnisse laufend speichern und zusätzlich erkennen können, an welchem Font es zuletzt gearbeitet hat. Diesen Font darf es bei einem Neustart als kaputt ignorieren. Schöne Grüße aus Bremen hartmut