Интерпретатор Python ожидает смерти дочернего процесса

1

Содержание 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, ребенок умрет too- no "yeah.txt".

Как сделать, чтобы ребенок продолжал работать, даже если родитель убит, а также что родитель не дожидался завершения дочернего процесса?

Теги:
multiprocessing

2 ответа

0
Лучший ответ

вместо этого посмотрите на модуль подпроцесса.

1

То, что вы, кажется, хотите, - это запустить ваш сценарий как фоновый процесс. Решение в том, как запустить фоновый процесс в Python? вам следует указать некоторый параметр командной строки, который говорит, что ваш скрипт переходит в slp а не создает новый процесс.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню