python产生守护进程的典型代码,两次fork,两次exit
1、代码示例:
import os
import time
def demo():
try:
if os.fork() > 0:
os._exit(0)
except OSError, error:
print 'fork #1 failed: %d (%s)' % (error.errno, error.strerror)
os._exit(1)
os.chdir('/')
os.setsid()
os.umask(0)
try:
if os.fork():
os._exit(0)
except OSError, error:
print 'fork #2 failed: %d (%s)' % (error.errno, error.strerror)
os._exit(1)
test()
def test():
f = open('/home/tomcat/py/log/demo.log', 'w')
while True:
f.write(time.ctime()+'\n')
f.flush()
time.sleep(2)
f.close()
if __name__ == '__main__':
demo()
2、解释: