Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发。
Python daemonizer 类
这是一个Python类,会使你的Python脚本成为守护进程,以使它可以在后台继续运行。这个类在Unix, Linux, 和OS X上运行,会创建一个PID文件,而且有标准的命令(start, stop, restart)+ 前台模式。
基于来自jejik.com的原始版本。
用法
定义一个继承Daemon的类,实现run()方法(一旦成为守护进程这个方法就会被调用。)
创建你的类的一个新对象, 指定你的PID文件存放的位置:
动作
start() - 启动守护进程(创建PID并且使之成为守护进程)。
stop() - 停止守护进程(停止子进程并移除PID)。
restart() - 先执行stop()再执行start()。
前台运行
对于调试,这个很有用。因为你可以启动一个程序而不用使它成为一个守护进程。
运行中的脚本会依赖打开的shell窗口,就像任何普通的Python脚本一样。
只需要直接调用run()方法就可以实现。
持续执行
这个run()方法只会被执行一次,因此如果你想让这个守护进程持续地工作,你可能希望使用sched模块来执行重复代码(例子)。
英文原文:https://github.com/serverdensity/python-daemon
译者:Xiaogang