2016-05-23 11 views
0

Подпроцесс Lauch из колбы и перезаряжаемой колбы также убьет подпроцесс.Запуск отсоединенного процесса из колбы

Кто-то знает, как можно отсоединить процесс от основного процесса? поэтому, если я убью основной процесс, подпроцесс останется активным?

Es:

В главном приложении опоки, когда я открыть маршрут, например/store_changes приложения запустить код ниже:

subprocess.Popen("python hdb_store_changes.py --country {0} --id_first_level {1} --threads {2} --qty {3} --username {4}".format(country.upper(),id_first_level,threads,fixedqty,username), shell=True,stdout=subprocess.PIPE) 

этот код будет выполнить другую программу, которая будет занимает много времени обрабатывать ... если я перезапустить приложение склянки этот процесс умереть также, мне нужно найти способ, чтобы отделить от основного процесса ...

Благодаря

+1

Сельдерей. Вот введение: http://blog.miguelgrinberg.com/post/using-celery-with-flask – wgwz

+1

, если вы хотите, чтобы он продолжал работать, даже если «фляжка» мертва, а кто читает со своей стандартной версии? Если ответ никем, тогда отбросьте 'stdout = PIPE' - не используйте' stdout = PIPE', если вы не прочтете из канала во время выполнения процесса, иначе он может зависать, когда заполняется соответствующий буфер буфера OS. [Чтобы скрыть вывод, используйте 'stdout = DEVNULL' (http://stackoverflow.com/q/11269575/4279). Unrelated: drop 'shell = True' и передать аргументы как список. – jfs

ответ

0

золь я принял использование сельдерея, как указано wgwz

, но решение J.F. Sebastian также правильное.

 Смежные вопросы

  • Нет связанных вопросов^_^