这是一个创建于 1525 天前的主题,其中的信息可能已经有所发展或是发生改变。
如题
因为对 Python 多线程 /多进程 /asyncio 的理解不是很深 所以请教下各位大佬
大致需求就是用 Python 跑两个 shell 命令,这两个 shell 命令可能时不时会挂掉
挂掉之后需要 Python 这边自动重启这两个命令
关于为什么不直接用 shell
因为这两个命令里的一些参数需要一些 Python 库获取
比较 low 的办法是起两个如下的同步程序
import subprocess
import time
p = subprocess.Popen(cmd,shell=True)
while True:
try:
stopped = p.poll()
except:
stopped = True
if stopped:
p = subprocess.Popen(cmd,shell=True)
time.sleep(60)
现在想请教下有没有办法用异步的方式实现在同一个脚本里自动重启这两个命令?
第 1 条附言 · 2020-09-09 11:45:10 +08:00
用 subprocess.Popen 其实就能实现
定时判断下 p.poll()的值就能知道子进程退出了没有