Подключение к дочерним процессам после рестарта приложения

 
 
 
Сообщения:24
Здравствуйте. Обычно работа дочерних процессов (например запуск команд ос) не завершается со "смертью" основного приложения которое их породило.
Они продолжают висеть в памяти и выполняться. Существует ли какая-то технология позволяющая после перезапуска упавшего приложения-родителя "подцепиться" к ранее запущенным процессам и работать с ними так, будто именно перезапущенное сейчас приложение их породило?
 
 
Сообщения:709
если всё происходит в одной VM, то нужно дочерние потоки подвесить глобально:
либо делаешь статическую методу getXxxThread() которая либо возвращает старый поток, либо создаёт новый.
либо работаешь через глобальный сервис сообщений.
но тут надо смотреть на конкретный пример - не всё везде подходит. и главное, сделать так, чтобы главный поток не утянул за собой всю программу.

насчёт вебсервисов ты бы не спросил.

а насчёт процессов в других VM - там вроде что-то было, но в упор не помню.
 
 
Сообщения:24
В моём случае может рухнуть вся VM целиком, т.е. порождённые процессы остаются без родителя.
Пока думаю сделать какую-нибудь прослойку типа контроллера процессов. Что-то очень примитивное и сверх-стабильное. Т.е. контроллер просто принимает команды на запуск процессов, отдачу инфы по ним и их прибитию. Основное приложение просит прослойку обо всём и выполняет свою логику. А если упадёт - прослойка пашет, перезапускайся и проверяй что там с процессами.
 
Модераторы:Нет
Сейчас эту тему просматривают:Нет