相关疑难解决方法(0)

我怎样才能找出为什么subprocess.Popen wait()如果stdout = PIPE会永远等待?

我有一个程序写入stdout和stderr.我想从python运行它,捕获stdout和stderr.我的代码看起来像:

from subprocess import *

p = Popen( exe, shell=TRUE, stdout=PIPE, stderr=PIPE )
rtrncode = p.wait()
Run Code Online (Sandbox Code Playgroud)

对于几个程序,这很好,但是当我添加一个新程序时,新的程序会永远挂起.如果我删除stdout=PIPE,程序将其输出写入控制台并完成,一切都很好.如何确定导致挂起的原因?

在Windows XP上使用python 2.5.该程序不从stdin读取,也没有任何类型的用户输入(即"按键").

python subprocess

20
推荐指数
1
解决办法
1万
查看次数

标签 统计

python ×1

subprocess ×1