Что я хочу? Создать сценарий, который запускает и убивает протокол связиУбить созданный подпроцесс и все созданные им процессы
Что я имею? У меня есть скрипт python, который открывает сценарий оболочки, и этот сценарий оболочки инициализирует протокол. Когда я убиваю родительский процесс, все идет хорошо (но в конечном проекте родительский процесс должен остаться в живых), но когда я убиваю подпроцесс, он становится функцией зомби, и мой протокол продолжает работать.
проблемы я считаю, может быть: я «убийство» сценарий оболочки (а не протокол, это то, что я хочу)
Линия Я запустить сценарий оболочки:
`protocolProcess = subprocess.Popen(["sh", arquivo], cwd = localDoArquivo) #inicia o protocolo`
protocolProcessPID = protocolProcess.pid #armazena o pid do protocolProcess
Линия Я убью скрипт оболочки: os.kill(protocolPID, signal.SIGTERM)
Ну, вот и все! Если кто-нибудь может мне помочь, я буду очень благодарен
Связанный: [Как завершить подпроцесс python, запущенный с оболочкой = True] (http://stackoverflow.com/q/4789837/4279) – jfs