Lambert hat geschrieben:Oder ein Überwachungsprogramm für Windows.
Hallo Franz!
Strg-Alt-Entf --> Task Manager
Mit dem kannst du -- allgemein -- den Speicherverbrauch und die Prozessorauslastung anzeigen lassen.
Unter "Windows 2000 Pro" oder -Server kannst du dir den "Systemmonitor" installieren. Der ist bei Windows mit dabei. Die Home-Versionen von Windows kenne ich nicht. Da ist er evt. nicht dabei. Damit kannst du ebenfalls -- unter anderem -- den Speicher überwachen.
Lässt sich der Fehler auf einem anderen Computer reproduzieren? Wenn ja, dann liegt es wahrscheinlich nicht an einem fehlerhaften RAM-Baustein.
Du könntest ja auch in deinen Code einige "print"-Anweisungen einbauen.
Damit bekommst du raus wo dein Programm abbricht.
Bricht das Programm, bei gleichem Input, immer an der exakt gleichen Stelle ab, oder variiert es?
Bricht das Programm schneller ab, wenn du den Speicher vorher durch viele offene Programme (Word, Excel, Access, ...) vollmüllst? Wenn Ja, dann verbrauchst du zu viel Speicher. Wir wissen ja nicht, was du so alles in deiner Schleife machst.
Du kannst deinen Speicherverbrauch drastisch reduzieren, wenn du nicht alles in den Speicher lädst, sondern mit den Daten in den Dateien direkt arbeitest. Eventuell kannst du dafür auch das Modul "shelve" verwenden. Das wirkt Wunder, da es die Daten im Dateisystem hält. Trotzem lässt sich damit wie mit einem Dictionary arbeiten.
Vielleicht bekommst du eine bessere Fehlermeldung, wenn du deine Schleife in "try" und "except" einhüllst.
http://www.python-forum.de/post-8616.html#8616
Allerdings würde ich die anderen "try" und "exept" aus der Schleife entfernen, damit keine andere Fehlerbehandlung dazwischenfunken kann.
Mehr fällt mir im Moment nicht ein.
mfg
Gerold