我有一个pyside应用程序调用的exectuable。 我想在数处理异步运行这个可执行文件,并捕捉每一个过程的输出一个QTextEdit。
目前,我有:
def run(self, args, worklist):
self.viewer = OutputDialog(self)
self.procs = []
for path in worklist:
final_args = args + path
p = QtCore.QProcess(self)
p.readyReadStandardOutput.connect(self.write_process_output)
self.procs.append(p)
p.start(self.exe, final_args)
def write_process_output(self):
for p in self.procs:
self.viewer.text_edit.append(p.readAllStandardOutput())
这是太笨重,因为每个进程发送“准备就绪”的信号时,它试图让所有进程的输出。
我怎样才能得到输出只是发送信号的过程?