在我看来,在Python中,没有必要收获僵尸进程。在python中没有必要收获僵尸进程吗?
例如,在下面的代码
import multiprocessing
import time
def func(msg):
time.sleep(2)
print "done " + str(msg)
if __name__ == "__main__":
for i in range(10):
p = multiprocessing.Process(target=func, args=('3'))
p.start()
print "child"+str(i)
print "parent"
time.sleep(100)
当所有的子进程退出,父进程仍在运行 此时,我检查了使用ps -ef
过程中,我发现没有不存在的过程。
这是否意味着在Python中,没有必要收获僵尸进程?
我不明白你最后一句的意思,根据你的1和2,僵尸是由Process类自己清理的吗? – user1944267 2013-05-06 11:42:39
@ user1944267是的,但是在某些情况下,在这种情况下不能满足要求。我试图在棚子里放一些灯光,但光线不够明亮。 – glglgl 2013-05-06 11:45:30
此外,如果我想在子进程退出后执行某些操作,那么如何使其成为可能?像'C' – user1944267 2013-05-06 11:46:15