今天看到别人的源代码中有fork子进程来操作数据。但是由于fork之后,没有及时的退出,导致系统中的Python进程越来越多,子进程越来越多了。自己随手写了Python下fork进程的测试代码(来说明这个问题不一定完全合适):
def fork(a):
def now():
import datetime
return datetime.datetime.now().strftime("%S.%f")
import os
import time
print now(), a
if os.fork() == 0:
print '子进程[%s]:%s' % (now(), os.getpid())
while 1:
a-=10
print '子进程的a值[%s]:%s' % (now(), a)
...