gpt4 book ai didi

Python:pyqt 应用程序中的多处理

转载 作者:太空宇宙 更新时间:2023-11-04 01:28:52 26 4
gpt4 key购买 nike

我的计算机中有一个 i7 CPU,为了提高我的 pyqt 应用程序的时间计算性能,我正在尝试使用多处理模块;当我在 pyqt 应用程序中做这样的事情时:

import multiprocessing as multiprocessing

def foo(ii):
print ii

pool = multiprocessing.Pool(8)
pool.map(foo, range(10))

然后应用程序生成 8 个 pyqt GUI,它们是第一个主窗口的克隆(我总共有 9 个 pyqt GUI,这当然是错误的,我想做的是并行计算而不是克隆主 GUI xD ).

我也尝试了 joblib 库(http://pythonhosted.org/joblib/),但问题是一样的。

有没有办法在具有多处理或 joblib 模块的 pyqt 应用程序中进行并行计算?

感谢您的帮助

最佳答案

如果您使用的是 Windows,多处理将启动导入主模块的新进程。请务必将 GUI 创建代码放在 if __name__ == '__main__':

更好的是,为了避免在子进程中不必要地导入 PyQt 的开销,创建一个简单的新主模块,如下所示:

if __name__ == '__main__':
import old_main_module
old_main_module.main()

关于Python:pyqt 应用程序中的多处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15520957/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com