2 Stimmen

Django / Python / PIL / sorl-thumbnail generation in bulk - Speicherfehler

Ich versuche, 4 Thumnails für jedes der rund 40k Bilder zu generieren mit sorl-thumbnail für meine Django-App. Ich durchlaufe alle Django-Objekte mit einem ImageWithThumbnailsFieldFile und rufe dann die Funktion generate_thumbnails() auf.

Das funktioniert gut, außer dass mir nach ein paar hundert Iterationen der Speicher ausgeht und meine Schleife mit "Speicherfehler" abstürzt. Da sorl-thumbnail PIL verwendet, um Thumbs zu erzeugen, scheint es so zu sein, dass PIL nicht den gesamten Speicher zurückgibt, den es bei der Erzeugung eines Thumbs verwendet hat.

Weiß jemand, wie man dieses Problem vermeiden kann, z. B. indem man PIL zwingt, den nicht mehr benötigten Speicher zurückzugeben?

Mein Code sieht einfach wie folgt aus:

all = Picture.objects.all()
for i in all:
    i.image.generate_thumbnails()

Die Funktion generate-thumbnail startet ici , Zeile 129.

Vielen Dank im Voraus für jeden Ratschlag!

Martin

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X