用的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