使用Python 3中的多进程库从另一个进程开始进程

2024-04-27 05:16:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在开发一个包含3个主要进程(GUI、process1、process2)的应用程序。GUI创建process1,process1创建process2(process2应该在另一个窗口中启动一个新的QT GUI)。当process1被创建并正常工作时,process2被创建但不工作,没有我想要的新的QTWidget被创建。不会引发错误或异常。由于项目非常大,我无法编写此问题中的所有代码,下面是应用程序的方案:

class GuiMain(QMainWindow):
    ...
    proc1 = Process1(...)
    proc1.start()
    ...

class Process1(mp.Process)

    def __init__(self, ...):
        mp.Process.__init__(self)

    def run(self):
        ...
        proc2 = Process2(...)
        proc2.start()
        ...

class Process2(mp.Process)

    def __init__(self, ...):
        mp.Process.__init__(self)

    def run(self):
        # Creating a new QTApplication with MyQTWidget 
        app = QtGui.QGuiApplication(sys.argv)
        ex = rcp_gui.MyQWidget()
        sys.exit(app.exec_())

class MyQWidget(QWidget):

    def __init__(self):
        QWidget.__init__()
        ...

if __name__ == '__main__':
    app = QApplication(sys.argv)
    application = GuiMain()
    sys.exit(app.exec_())

我错过什么了吗?不能从主进程以外的进程启动新的QT窗口吗?我怎样才能做到?。先谢谢你。你知道吗


Tags: selfapp应用程序进程initdefsysgui