Я написал сценарий python, который отвечает за выполнение других скриптов. Я замечаю, что время от времени я получаю несуществующий процесс.Обнаружение, если процесс завершает работу с подпроцессом Python
Я читал некоторые другие темы на StackOverFlow, и они сказали, что вы можете поймать проблему, если .communicate
или .call
не используются.
Единственное, с чем я сейчас сталкиваюсь, это то, что мне также нужно получить код выхода процесса.
Мой код ниже.
job.append("py")
job.append("\tmp\test\sleep.py")
job.append("20")
p = subprocess.Popen(job, stderr=subprocess.PIPE,stdout=subprocess.PIPE)
exit_code_main = p.wait()
Мне нужно получить все выходные данные из выполнения подпроцесса, и мне нужно получить выход ошибки, если таковой имеется. Код выхода - это то, что я использую для определения успешного выполнения сценария в подпроцессе.
_ "Я был чтение некоторых других потоков на StackOverFlow ... »_ Я тоже хотел бы прочитать их. Есть ли ссылки? – Kevin
вы можете получить код выхода из 'p'' print p.returncode' –
@Kevin http://stackoverflow.com/questions/2760652/how-to-kill-or-avoid-zombie-processes-with-subprocess- модуль – user3012759