Покинул форум
Сообщений всего: 97
Дата рег-ции: Июль 2010
Помог: 1 раз(а)
а такое возможно?
DeepVarvar
Отправлено: 07 Ноября, 2011 - 16:12:08
Активный участник
Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008 Откуда: Альфа Центавра
Помог: 353 раз(а)
Повесить свой обработчик на один из сигналов,
например, SIGSTOP не катит - он не может нести информацию,
он сам есть информация. (Добавление)
Может как-то можно через stdin по PID'у?
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Через сигналы никак (сигнал несет в себе только целое число - собственно свой код)
Если скрипт сам не понимает (заранее), то уже не передать.
Однако можно сделать что-то наподобие вот такого костыля:
- естественно, в файл данные были записаны до отсылки сигнала.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
DeepVarvar
Отправлено: 07 Ноября, 2011 - 16:26:20
Активный участник
Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008 Откуда: Альфа Центавра
Помог: 353 раз(а)
EuGen я только ушел от файлов... Но не важно. Это мысль.. Разбирать буду уже завтра - рабочий день кончился уже как 25 мин назад..
Отпишу как получилось. (Добавление)
Писать буду не в файл, а в память, там хоть залочить можно по человечески..
Можно кстати и через lock сегмента попробовать.
Смысл тот же - действие на событие. (Добавление)
Плюсанул
- только тогда скрипт будет "висеть" и ждать ввода и не продолжит свою работу до тех пор, пока не будет сделан ввод.
Схема - послать SIGHUP - сделать ввод (я делал в той же консоли, как видно из лога) - получить обновление параметра.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
DeepVarvar
Отправлено: 07 Ноября, 2011 - 18:41:06
Активный участник
Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008 Откуда: Альфа Центавра
Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008 Откуда: Москва
Помог: 57 раз(а)
Интересный механизьм придумали. Я вдруг осознал, что на форме нет функционала Избранное! По-моему, он нужен
EuGen
Отправлено: 07 Ноября, 2011 - 22:22:06
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Что же здесь хорошего? Это же костыль, костыль.. необходимость изменения параметров запуска - это архитектурный просчет, нет и не придумать таких конструкций, где это реально нужно.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
DeepVarvar
Отправлено: 08 Ноября, 2011 - 10:33:05
Активный участник
Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008 Откуда: Альфа Центавра
т.е. pcntl_signal не нужен, и лишние телодвижения тоже..
EuGen пишет:
где это реально нужно.
Есть подключение по ssh, оно отваливается каждые 20-40 мин, даже если я что-то делаю.
Запускаю всякие парсеры.. Мне надоело следить за состоянием соединения.
Пусть парсеры сами там работают. Просто хотел отписать удобную штуку для управления этими процессами.
Чтобы не лазить по ps -A -F и не грепать каждый раз.
Зашел посмотрел как там дела, запустил/перезапустил/остановил кого надо, вышел...
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
DeepVarvar пишет:
Запускаю всякие парсеры.. Мне надоело следить за состоянием соединения.
man screen
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
Stierus
Отправлено: 08 Ноября, 2011 - 11:00:39
Рекордсмен по количеству сообщений за 7 дней
Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008 Откуда: Москваль
Помог: 52 раз(а)
Просто хотел отписать удобную штуку для управления этими процессами
так и сделайте удобную штуку для управления этими процессами - общего родителя
DeepVarvar
Отправлено: 08 Ноября, 2011 - 11:47:32
Активный участник
Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008 Откуда: Альфа Центавра
Помог: 353 раз(а)
Stierus пишет:
общего родителя
Именно это и делаю. Но pcntl_fork не подойдет. Он же "отражение" стандартного никсового fork().
Процессы разные - мне не нужны копии родителя.
Однако и слежение за "потомками" требуется.
EuGen пишет:
man screen
А смысл? Соединение разрывается, парсер(-ы) падает(-ют) когда теряется окружение из которого он(-и) был(-и) запущены.
Крон? Нет - действия одноразовые. Причина? Чье-то "Хачу щас"...
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.