Мне было интересно, как вы можете проверить, работает ли программа с использованием python, и если она не запускается. У меня есть 2 скрипта python, один из них - графический интерфейс, который контролирует другой скрипт. Так что в основном, если второй скрипт по какой-то причине сбой, я бы хотел, чтобы это началось. P.S. Я использую python 3.4.2 в Windows.Проверка выполнения программы
ответ
Модуль psutil может вам помочь. Для того, чтобы перечислить все процесс подножки использования:
import psutil
print(psutil.pids()) # Print all pids
Чтобы получить доступ к информации о процессе использования:
p = psutil.Process(1245) # The pid of desired process
print(p.name()) # If the name is "python.exe" is called by python
print(p.cmdline()) # Is the command line this process has been called with
Если вы используете psutil.pids()
на для, вы можете проверить все, если этот процесс использует питон, как:
for pid in psutil.pids():
p = psutil.Process(pid)
if p.name() == "python.exe":
print("Called By Python:"+ str(p.cmdline())
документация psutil доступна на: https://pypi.python.org/pypi/psutil
EDIT 1
Предположив, если имя сценария Pinger.py, вы можете использовать эту функцию
def verification():
for pid in psutil.pids():
p = psutil.Process(pid)
if p.name() == "python.exe" and len(p.cmdline()) > 1 and "Pinger.py" in p.cmdline()[1]:
print ("running")
Я думаю, что это не одна из стандартных библиотек python по умолчанию, или я ошибаюсь? если так, то я нашел это lib https://pypi.python.org/pypi/psutil, это вы правы? – Sande
Да, вы правы, эта библиотека lib не является листом по умолчанию, но вы правильно указали, это тот же модуль –
Другой вопрос, я вижу, что это реагирует во всех скриптах python. Как python.exe, но я хотел бы проверить отдельный скрипт, а не основной, который имеет psutil – Sande
- 1. Проверка выполнения или импорта Ruby-программы по требованию
- 2. Проверка времени выполнения C
- 3. Проверка ошибок этой программы
- 4. Проверка программы для сбоев
- 5. Проверка моей программы?
- 6. Проверка Установленные программы
- 7. python Проверка связи программы
- 8. Проверка выполнения выполнения запросов Oracle
- 9. Счетчик времени выполнения программы
- 10. Время выполнения программы
- 11. Скорость выполнения программы C
- 12. Ошибка выполнения PHP-программы
- 13. Время выполнения программы Clojure
- 14. wix результат выполнения программы?
- 15. Оптимизация выполнения программы
- 16. Время выполнения программы
- 17. контроль выполнения программы
- 18. Java вопросы выполнения программы
- 19. После выполнения программы
- 20. Сегментация выполнения программы QApplication
- 21. Измерение времени выполнения программы
- 22. выполнения оболочки программы сценария
- 23. Выполнения программы синусоидальной волны
- 24. Изменение времени выполнения программы
- 25. Показывать ход выполнения во время выполнения программы
- 26. проверка выполнения функции?
- 27. Проверка пути выполнения кода?
- 28. Проверка выполнения ICommand
- 29. Проверка выполнения условий SQL
- 30. Проверка выполнения заданного процесса
Google вокруг и увидеть, что PidFile есть, возможно, решит вашу проблему. – Maciek
Это может помочь вам: http://stackoverflow.com/questions/1632234/list-running-processes-on-64-bit-windows –
'sudo apt-get install supervisor' – C14L