我试图从python 2.7中启动一个程序(HandBreakCLI)作为子进程或线程.我已经开始了,但我无法弄清楚如何监控它的stderr和stdout.
程序将其状态(完成%)和有关编码的信息分别输出到stderr和stdout.我希望能够定期从适当的流中检索完成的%.
我已经尝试调用subprocess.Popen并将stderr和stdout设置为PIPE并使用subprocess.communicate,但是它等待直到进程被终止或完成然后检索输出.对我没有好处.
我把它作为一个线程运行起来,但据我所知,我仍然必须最终调用subprocess.Popen来执行程序并运行到同一个墙上.
我是以正确的方式来做这件事的吗?我还有哪些其他选择或如何按照描述使其工作?