当有足够的可用 RAM 时内核被杀死

Kernel killed while there is plenty of available RAM

我正在 运行使用以下代码将文件夹中的所有 .png 文件转换为 gif 的 python 程序:

    import glob
from PIL import Image
from PIL import ImageFile
ImageFile.LOAD_TRUNCATED_IMAGES = True

# filepaths
fp_in = path_monthly + '/' + "*.png"
fp_out = path_directory + '/' + "Monthly_MB.gif"

# https://pillow.readthedocs.io/en/stable/handbook/image-file-formats.html#gif
img, *imgs = [Image.open(f) for f in sorted(glob.glob(fp_in))]
img.save(fp=fp_out, format='GIF', append_images=imgs,
         save_all=True, duration=600, loop=0)


import glob
from PIL import Image
from PIL import ImageFile
ImageFile.LOAD_TRUNCATED_IMAGES = True

# filepaths
fp_in = path_yearly + '/'  + "*.png"
fp_out = path_directory + '/' + "Yearly_MB.gif"

# https://pillow.readthedocs.io/en/stable/handbook/image-file-formats.html#gif
img, *imgs = [Image.open(f) for f in sorted(glob.glob(fp_in))]
img.save(fp=fp_out, format='GIF', append_images=imgs,
         save_all=True, duration=600, loop=0)

共有193个png文件,总重量为500Mb。我的笔记本电脑有 16Gb 的内存。但是,当我运行程序时,内核被自动杀死并重新启动并显示:

正在重启内核...

[SpyderKernelApp] 警告 |没有这样的通讯:25562a62516411ebbc72f17b9468ff8d

为什么这个程序似乎占用了我笔记本电脑的所有 RAM?我 运行 正在双启动,有足够的存储空间,除了 spyder 之外没有其他主要程序 运行 正在后台运行。你知道为什么会出现这种问题吗?

非常感谢!

我google这个问题,并找到了答案。很多人遇到这个问题,在github中建议是

Please update to Spyder 4.1.4. This problem should be fixed in that version.

有人说已经解决了——需要添加QT的扩展依赖。我觉得link可以帮你解决问题