踩雷

工作要求,要打包生成一个秒杀后台,因为多个秒杀要同时进行,为了符合需求,使用了多进程,但是打包过程后无法启动。

错误原因

多番追踪bug发现是windows下多进程在dos下无法正常运行。

windows下新建进程是要新开一个进程,跟Linux不同,linux下可以新建子进程。如果新建进程的话,跟主进程不相关,所以不能运行?大概率是这个原因。

具体情况可以参考一下这里python - multiprocessing.freeze_support() - Stack Overflow

解决方法

主程序入口处添加如下代码:

multiprocessing.freeze_support()

完美解决。

Last modification:August 25th, 2021 at 03:27 pm
如果觉得我的文章对你有用,请作者喝杯咖啡把~