带有stdin和stdout的子进程Popen-总是挂断

时间:2019-04-17 07:45:55

标签: python python-3.x subprocess

我需要与以命令行启动的Flash进程进行通信。 不幸的是,如果发生错误,则刷新程序需要输入“ Enter”键。

我已经安装了python 3.7.2,并将subprocess与PyCharm结合使用。我可以使用popen开始该过程,但是即使使用stdoutbufsize = 0甚至使用刷新命令,1似乎还是空的:{{1} }这是代码:

p.stdout.flush():

......有了这个,程序将永远挂起:

import subprocess

proc = subprocess.Popen(stringCall, stdout=subprocess.PIPE, stdin=subprocess.PIPE, bufsize=0, universal_newlines=True)

time.sleep(2)
proc.stdout.flush()

我找到了解决该问题的很多例子,但没有一个适合我。也许是在我使用3.7.2时适用于Python 2.x的... 我希望for line in proc.stdout: print(line) 容器填充后会有所反应,或者示例代码能够运行。

0 个答案:

没有答案