环境说明
系统: macOS m1 Sonoma 14.0
python: 3.12.0
pyinstaller: 6.2.0
问题说明
我的使用的是多进程multiprocessing模式写的一个脚本,遇到了一个奇怪的问题
我正常开发python运行时,一切正常,但打包后再运行, 程序一启动就疯狂复制生成进程,最终导致cpu100,系统卡死。
问题定位
最终定位代码
multiprocessing.queue()
只要去除了这段代码就没问题
问题解决
把python的标准库中模块multiprocessing换成三方模块multiprocess
更多查看:https://multiprocess.readthedocs.io/en/latest/
multiprocess模块的接口与multiprocessing基本相同;部分函数、方法的传参不完全一样,不过,但对于通常应用情景不会有差别。
问题思考
至于multiprocessing为什么在mac m1出现这样的问题,我并没有找到原因? 希望有了解的同学,麻烦留言告知,不胜感激。
又是一个折腾了很久的问题,实在不太理解这种不兼容,不想说python什么,坑呀