有时,我们会遇到Python程式莫名其妙地退出,也没有任何异常提示,但我们希望程式能够一直运行,即便异常终止,也能自动启动,这时我们可以写一个监视程式,来达到目的:
# -*- coding: utf-8 -*-
#!/usr/bin/python
import os
import subprocess
res = subprocess.Popen('ps -ef | grep ASRS',stdout=subprocess.PIPE,shell=True)
attn=res.stdout.readlines()
counts=len(attn) #获取ASRS下的进程个数
print counts
if counts<10: #当进程不够正常运行的个数时,说明某只程式退出了
os.system('python /home/pi/ASRS/ASRS.py') ##启动程式
## os.system('reboot') #重启系统