我正在尝试从 GUI 内部使用 QProcess 同时运行多个 python 脚本。下面将执行第一个脚本并为其他两个脚本抛出 QProcess::start: Process is already running
。
def run(self):
self.p = QtCore.QProcess()
scripts = ['python ./scripts/s1.py', 'python ./scripts/s2.py', 'python ./scripts/s3.py']
for s in scripts:
self.p.start(s)
答案 0 :(得分:1)
如果 QProcess 已经在运行,你就不能重用它,正如错误报告那样。
只需创建一个进程列表:
def run(self):
self.processes = []
scripts = [
'python ./scripts/s1.py',
'python ./scripts/s2.py',
'python ./scripts/s3.py'
]
for script in scripts:
process = QtCore.QProcess()
self.processes.append(process)
process.start(script)