Память не освобождается на image.close () в подушке - PullRequest
0 голосов
/ 26 января 2019

Я изо всех сил пытаюсь отстраниться от изображения подушки.

Если я запускаю следующее:

@profile
def do_image_things():
  im = Image.open(foo.png')
  im.close()
  del im

Затем я получаю следующий вывод из памяти_профиля Python:

Line #    Mem usage    Increment   Line Contents
================================================
     8   33.645 MiB   33.645 MiB   @profile
     9                             def do_image_things():
    12   37.383 MiB    3.738 MiB     im = Image.open(u'foo.png')
    13   37.387 MiB    0.004 MiB     im.close()
    14   37.387 MiB    0.000 MiB     del im

Вызывается, что вызов im.close() не имеет- выделил память, которую Image.open() зарезервировал.Это полное воспроизведение проблемы, возникающей при развертывании крупномасштабной обработки изображений, в которой мы заметили проблемы с памятью.

Кто-нибудь смог решить эту проблему?

Iиспользую Pillow версии 5.0.0 и 2.7.14 на Mac OS X.

...