为什么应用程序中的Python MutlipProcess.Process调用会启动多个self实例?

为什么应用程序中的Python MutlipProcess.Process调用会启动多个self实例?,python,multiprocessing,pyinstaller,multiprocess,Python,Multiprocessing,Pyinstaller,Multiprocess,我创建的GUI使用多进程.Process函数调用,通过使用多个进程更快地完成工作 w1 = multiprocessing.Process(target = _process_worker.start) 当我以python脚本运行GUI时,GUI.pyany我单击启动workers的按钮,一切都很好,工作做得更快,没有问题 当我将python程序编译成窗口应用程序(使用pyinstaller)时,单击相同的按钮会导致GUI启动自身的多个实例;也就是说,每次进行多进程调用时,gui都会启动另一个

我创建的GUI使用多进程.Process函数调用,通过使用多个进程更快地完成工作

w1 = multiprocessing.Process(target = _process_worker.start)
当我以python脚本运行GUI时,
GUI.py
any我单击启动workers的按钮,一切都很好,工作做得更快,没有问题

当我将python程序编译成窗口应用程序(使用pyinstaller)时,单击相同的按钮会导致GUI启动自身的多个实例;也就是说,每次进行多进程调用时,gui都会启动另一个gui应用程序

pyinstaller.ex --onefile --windowed --icon=guiicon.ico gui.py
有人知道我如何让流程只做工作,而不是打开多个实例本身吗?首先,它为什么要这样做?

在使用
多处理模块时,必须调用

紧跟在主模块的
行之后,如果
名称<=

有关更多信息,请阅读Python库手册中关于multiprocessing.freeze\u支持的内容

参考

multiprocessing.freeze_support()