我想我可能在重复这个问题,但我没有找到符合我要求的答案。 原谅我的无知。在
我有一个程序在运行,它不断地从服务器。It永远不要停下来直到它被杀死。在
我想把它包装在一个python脚本中,以便在输出到达时读取并处理它。 我尝试了堆栈溢出中的一些子进程思想,但没有用。 请提出建议。在
p=subprocess.popen(args,stderr=PIPE,stdin=PIPE,stdout=PIPE,shell=FALSE)
#p.communicate#blocks forever as expected
#p.stdout.read/readlines/readline-->blocks
#select(on p.stdout.fileno())-->blocks
最好的方法是什么?在
听起来你可以用asynchronous version of the subprocess module。有关详细信息,请查看开发人员的blog。在
您可以运行另一个程序,将其输出定向到一个文件,然后使用Python的f.readline()跟踪该文件。在
有长度限制的阅读:
这是你评论中的代码,稍作修改。它对我有用:
^{pr2}$相关问题 更多 >
编程相关推荐