[python] 使用wordcloud时碰到内存错误munmap_chunk(): invalid pointer

用的IDE是Pycharm,调用wordcloud的时候碰到了内存错误的报错,反复执行后遇到不止这一种报错,还有各种各样的姿势……

munmap_chunk(): invalid pointer
corrupted size vs. prev_size
Process finished with exit code 139 (interrupted by signal 11: SIGSEGV)
malloc(): invalid next size (unsorted)

好像还有个interrupted by signal 6的,但是比较少见,没复制到

有的时候还能成功,百度也百度不到,只能查出来是内存错误;使用断点调试也找不到原因……(可能是我太菜了)

于是去github上翻issue,在后排看到一个熟悉的字眼 Memory errors on Fedora 29 #516(跟Fedora系统应该并无关系),运气不错,这个issue里大佬表示这个错误跟一个叫Pillow的包有关,回退到6.2.2版本就没问题了

pip install --no-binary=Pillow Pillow==6.2.2 --force

有趣的是,提问的大哥描述的很扑朔迷离,他说import了两个没用的包以后就能正常运行了,我试了一下,真的是这样,也不知道为什么

# Bad example
from wordcloud import WordCloud
# Good example
import matplotlib.pyplot as plt # unused import
from wordcloud import WordCloud
from gensim import corpora, models # and this one
原文地址:https://www.cnblogs.com/winng/p/wordcloud_memory_errors.html