相关疑难解决方法(0)

python中子进程读取线上的超时

我有一个小问题,我不太确定如何解决.这是一个最小的例子:

是)我有的

scan_process = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
while(some_criterium):
    line = scan_process.stdout.readline()
    some_criterium = do_something(line)
Run Code Online (Sandbox Code Playgroud)

我想要什么

scan_process = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
while(some_criterium):
    line = scan_process.stdout.readline()
    if nothing_happens_after_10s:
        break
    else:
        some_criterium = do_something(line)
Run Code Online (Sandbox Code Playgroud)

我从子进程读取一行并用它做一些事情.我想要的是在固定时间间隔后没有线路到达时退出.有什么建议?

python subprocess timeout

39
推荐指数
5
解决办法
3万
查看次数

如何使用asyncio从子进程流式传输stdout/stderr,并在之后获取其退出代码?

在Windows上的Python 3.4下,我需要通过子进程流式传输写入stdout/stderr的数据,即使用Python 3.4中引入的asyncio框架接收其输出.之后我还必须确定程序的退出代码.我怎样才能做到这一点?

python asynchronous python-3.4 python-asyncio

4
推荐指数
1
解决办法
2443
查看次数