Python 解释器等待子进程结束
以下是 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"
文件。
我该如何确保即使父进程被关闭,子进程也能继续运行,并且父进程不需要等子进程结束呢?
2 个回答
1
看起来你想要的是让你的脚本在后台运行。你可以参考这个链接中的解决方案:如何在Python中启动一个后台进程?。你需要指定一些命令行参数,告诉你的脚本进入slp
模式,而不是新开一个进程。
0
可以看看这个 subprocess 模块。