我想要实现的目标: 我希望我的主进程产生另一个独立的python进程。 像:
for i in range(2):
p = proces()
p.start()
sys.exit(0)
我生成的进程应该在后台执行一些任务:)
因为目前,如果我使用multiprocessing
库生成一个进程,然后关闭我的主脚本,这些进程也会退出。
答案 0 :(得分:0)
import time
import multiprocessing
import sys
def run_forever():
print "ENTERED SUBPROCESS"
while True:
print "HELLO from subprocess"
time.sleep(2)
print "GOODBYE SUBPROCESS"
if __name__ == "__main__":
print "STARTING IN MAIN"
multiprocessing.Process(target=run_forever).start()
time.sleep(1)
print "LEAVING MAIN PROG"
sys.exit()
产生以下输出
STARTING IN MAIN
ENTERED SUBPROCESS
HELLO
LEAVING MAIN PROG
HELLO
HELLO
HELLO
HELLO
HELLO
...
粗略的你现在可能有一个新问题(即你实际上并不想让run_forever永远运行......现在没有办法退出这个过程......)