运行在run mod中使用Qthread的多线程代码时出现问题

2024-10-04 11:26:09 发布

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

我使用Pycharm IDE开发了一个多线程python程序。一切都在调试模式下完美工作。IDE生成此命令行以在调试模式下运行程序:

E:\TSCExcelToolSet\venv\Scripts\python.exe "C:\Program Files\JetBrains\PyCharm 2018.1.3\helpers\pydev\pydevd.py" --multiproc --qt-support=auto --client 127.0.0.1 --port 51440 --file E:/TSCExcelToolSet/MainUserInterface.py

def initializeData(self):
    # di.CSVImporter(self.configParser.get('SectionOne', 'Path'), sqlbase.engine)
    self.progressBar.setValue(0)
    self.progressBar.setVisible(True)
    initializer = DataCollector()
    self.threadInit = QThread()
    self.threadInit.setObjectName('initThread')
    initializer.moveToThread(self.threadInit)
    # get progress messages from worker:
    initializer.sig_step.connect(self.on_worker_step)
    initializer.sig_done.connect(self.on_worker_done)
    self.sig_abort_workers.connect(initializer.abort)
    self.threadInit.started.connect(initializer.initializeData)
    self.threadInit.start()  # this will emit 'started' and start thread's event loop

但是,当它在运行模式下运行时,它使用下面的命令行,代码的线程部分不起作用

E:\TSCExcelToolSet\venv\Scripts\python.exe E:/TSCExcelToolSet/MainUserInterface.py

此外,在部署方面,我应该做些什么来克服这个问题


Tags: 命令行pyself程序venvconnectscriptside