Я работаю с демонами в python, используя рецепт Сандера .
Пока все прошло нормально, но я должен внести некоторые изменения, которые сверлят мой мозг.
Дело в том:
Образ жизни демона Сандера создает новый экземпляр объекта каждый раз, когда вы просите его. Пример:
[prompt]> python my_daemon.py start
[prompt]> python my_daemon.py check_whatever (new instance of my_daemon.py is created, but it looks for pid and finally gets the first one.)
Затем, ища pid, использованный для создания более старого экземпляра, вы можете получить к нему доступ и управлять им.
Ситуация такова: этот демон порождает два потока, которые продолжают работать после того, как демон выполнил команду запуска и готов принять другой (помните, новый экземпляр создан). Я хотел бы получить доступ к этим потокам в другой команде, но я не нашел пути (если он есть).
Насколько я исследовал, с помощью pid вы можете только убить или проверить демона, но не знаете, возможно ли получить объекты (т.е. потоки), созданные этим экземпляром.
Открытые вопросы :
-Если я могу восстановить процесс из его pid, могу ли я также получить доступ к его объектам?
- Нужно ли преобразовывать эти потоки в подпроцесс, чтобы сохранить их живыми после того, как основной поток завершил (или все еще ожидает)?