Fra*_*fer 1 subprocess python-3.x python-asyncio
对于由p以下创建的类对象asyncio.subprocess.Process
p = await asyncio.create_subprocess_exec(...)
Run Code Online (Sandbox Code Playgroud)
如何以非阻塞方式确定系统调用是否仍在运行?
由于 asyncioProcess没有poll()方法,因此您可以组合Process.wait()和asyncio.wait_for(),使用一个微小的超时来wait()检查进程是否完成,returncode如果完成则设置属性。
async def is_running(proc):
with contextlib.suppress(asyncio.TimeoutError):
await asyncio.wait_for(proc.wait(), 1e-6)
return proc.returncode is None
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1471 次 |
| 最近记录: |