я заменил некоторые использование Python subprocess.Popen экземпляры с psutil.Popen экземпляров и ожидается поведение останется прежней.psutil/подпроцесс код возврата, когда процесс убит
В psutil документы для POPEN состояния:
Более удобный интерфейс для STDLIB subprocess.Popen. Он запускает подпроцесс и обрабатывает его точно так же, как при использовании subprocess.Popen, но, кроме того, он также предоставляет все методы класса psutil.Process в одном интерфейсе.
Я обнаружил, что код возврата при завершении процесса не является таким же, как показано в примере ниже.
>>> import subprocess
>>> p = subprocess.Popen('sleep 100', shell=True)
>>> p.kill()
>>> p.wait()
-9
>>>
>>> import psutil
>>> p = psutil.Popen('sleep 100', shell=True)
>>> p.kill()
>>> p.wait()
9
>>>
>>> print sys.version
2.7.3 (default, Aug 28 2012, 13:02:46)
[GCC 4.4.6 20110731 (Red Hat 4.4.6-3)]
>>> print psutil.__version__
2.1.1
Каковы гарантии POSIX на кодах выхода при завершении процесса? Имеются ли оба вышеуказанных кода возврата?