check.py
的内容:
from multiprocessing import Process
import time
import sys
def slp():
time.sleep(30)
f=open("yeah.txt","w")
f.close()
if __name__=="__main__" :
x=Process(target=slp)
x.start()
sys.exit()
在Windows 7中,cmd
,如果我调用python check.py
,它不会立即退出,而是等待30秒。如果我杀了cmd
,那么孩子也会死亡 - 没有创建"yeah.txt"
。
如果父母被杀,父母不等待子进程结束,我如何确保孩子继续跑?
答案 0 :(得分:1)
您似乎想要的是将脚本作为后台进程运行。 How to start a background process in Python?中的解决方案应该这样做,您必须指定一些命令行参数,告诉您的脚本进入slp
而不是生成新进程。
答案 1 :(得分:0)
请改为查看subprocess模块。