Я создал систему очередей для запуска командных оболочек с python, и я запускаю процесс с:
subprocess.Popen(["path_to_shell"], shell=True)
Я пытаюсь опросить этот конкретный процесс из совершенно другого сценария / процесса Python, чтобы я моготслеживать код выхода
Я знаю, что обычно для отслеживания процесса вы создаете объект subprocess.Popen () и получаете информацию .poll ().Мне нужна информация poll () только из идентификатора процесса.Поэтому я могу опросить из другого приложения, чем то, которое запустило подпроцесс.
Я НЕ хочу делать:
psub = subprocess.Popen(something)
# polling
while psub.poll() is None:
pass
Примерно так:
app1
subprocess.Popen(something)
app2
job = subprocess.from_pid(known_id)
while job.poll() is None:
pass
запустить процесс с помощью subprocess.Popen () в одной программе, закрывающей эту программу.откройте совершенно другую вторую программу, посмотрите, запустив known_pid, запросите код возврата / завершения этого задания.
Меня не волнует вопрос «что если» процесса заканчивается до открытия второй программы.
Меня не волнует мета-анализ выбора дизайна.