您的位置:首页 > 编程语言 > Python开发

如何使python脚本运行在daemon模式

2018-01-02 14:58 981 查看
有一个很好的库可以完成这一功能,可惜因为文档少所以网上例子不太多库名:python-daemon可以通过Pip来安装最简单的使用方式
import daemon

with daemon.DaemonContext():
print "your code"
当然代码块中最好放一个长时间执行并写日志到某个路径的代码,方便观察代码的执行情况简单但是缺乏必要的控制,比如 如果我们想保证无论多次执行程序都只保证系统内只有一个改程序的进程的话就需要pid文件来控制这时候可以使用这个库带的另一个类DaemonRunner
import osimport timefrom daemon.runner import DaemonRunner_base_path="/tmp/"class MyApp(object):stdin_path = "/dev/null"stdout_path = os.path.join(_base_path, "myapp.stdout")stderr_path =  os.path.join(_base_path, "myapp.stderr")pidfile_path =  os.path.join(_base_path, "myapp.pid")pidfile_timeout = 5def run(self):for i in range(10):print itime.sleep(5)if __name__ == '__main__':run = DaemonRunner(MyApp())run.do_action()
例如这样
就可以通过
python test.py  start   来启动daemon进程
python test.py  stop    来停止daemon进程
并且可以通过/tmp/myapp.pid来查看进程的pid

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: