![]() |
Модераторы: korob2001, ginnie |
![]() ![]() ![]() |
|
Igоr |
|
|||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 7.12.2005 Репутация: нет Всего: нет |
привет.
есть скрипт, который будет работать в бесконечном цикле, но нужен способ как-нибудь его остановить по требованию. Как сделать? Спасибо |
|||
|
||||
sharq |
|
|||
![]() Perl Liker ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 13.12.2004 Где: Ростов-на-Дону Репутация: 23 Всего: 28 |
Igоr можно написать обработчик на нажатие Ctrl-C или другие клавишы, при нажатие на кот. срабатывавет last в цикле.
![]() -------------------- [color=gray]There's More Than One Way To Do It[/color] |
|||
|
||||
Igоr |
|
|||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 7.12.2005 Репутация: нет Всего: нет |
Извините если туплю, но я так понял, что метод, который вы предлагаете применим при запуске скрипта из консоли?
В моей ситуации скрипт запускается из веба. Это сообщение отредактировал(а) Igоr - 4.1.2006, 20:02 |
|||
|
||||
sharq |
|
||||
![]() Perl Liker ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 13.12.2004 Где: Ростов-на-Дону Репутация: 23 Всего: 28 |
Igоr
да. ![]()
Тогда подробнее опиши ситуацию. ![]() -------------------- [color=gray]There's More Than One Way To Do It[/color] |
||||
|
|||||
Igоr |
|
|||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 7.12.2005 Репутация: нет Всего: нет |
Ситуация следующая, есть скрипт, который получает массив урлов и гетит их, после того как пройдет весь список по одному разу нужно возобновить цикл и так далее... но не до бесконечности конечно
![]() ![]() Доступа к консоли нет. |
|||
|
||||
korob2001 |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 31 Всего: 61 |
Идея у тебя хорошая, но у тебя врядле что-то получится. Попробуй, напиши программу с цикло, не обязательно бесконечным и зупусти её в браузере.
![]() ![]() -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
||||
|
|||||
sharq |
|
|||
![]() Perl Liker ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 13.12.2004 Где: Ростов-на-Дону Репутация: 23 Всего: 28 |
Igоr можно сделать так, конечно, не самый простой способ.
![]() Написать отдельно скрипт, который при нажатие на кнопочку, т.е. при посылке ему опрделенного запроса, делал бы следующее - искал бы в процессах запущенный твой скрипт и удалял его при помощи команды kill. На самом деле, можно сделать запуск твоего скрипта по расписанию через cron и тогда не требуется его обрывать, пусть работает как часы. ![]() -------------------- [color=gray]There's More Than One Way To Do It[/color] |
|||
|
||||
popkorn |
|
|||
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 9.12.2005 Репутация: нет Всего: нет |
при посылке скрипту определенного параметра, выполняется :
@info = `ps aux`; foreach $a(@info){ if ($a =~ /название_скрипта/ ){ @ar=split(/ /,$a); `kill -9 "@ar[1]"`; }; } |
|||
|
||||
Usya |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 154 Регистрация: 7.6.2005 Репутация: нет Всего: нет |
Небольшой вопрос вдогонку.
Как убить зависший процесс и быть уверенным, что он точно убит? Либо, практически то же самое, - как определить PID зависшего (текущих) процессов? ![]() Заранее благодарен. Это сообщение отредактировал(а) Usya - 22.2.2006, 08:07 --------------------
Я не волшебник, я только учусь... |
|||
|
||||
chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 6 Всего: 44 |
![]() ![]() ![]()
|
|||
|
||||
tishaishii |
|
|||
![]() Создатель ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1262 Регистрация: 14.2.2006 Где: Москва Репутация: 4 Всего: 8 |
Добавлено @ 16:47 ![]() |
|||
|
||||
Usya |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 154 Регистрация: 7.6.2005 Репутация: нет Всего: нет |
chaos, tishaishii
Спасибо за ответы, но мне не надо убивать абсолютно все процессы, тем более перезагружать систему. Да и правов у меня таких нет. Попробую перефразировать вопрос: Как определить PID процесса (если более конкретно, то cgi-скрипта), чтобы при необходимости можно было его убить? При этом определить PID нужно из внешней проги. Или, в крайнем случае, необходимо определить PID-ы всех процессов (cgi-скриптов), а какой из них убить, там уже сам решу ![]() Это сообщение отредактировал(а) sharq - 23.2.2006, 12:39 --------------------
Я не волшебник, я только учусь... |
|||
|
||||
tishaishii |
|
||||
![]() Создатель ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1262 Регистрация: 14.2.2006 Где: Москва Репутация: 4 Всего: 8 |
Перечислены не все свойства. Все свойства процессов можно узнать здесь:
|
||||
|
|||||
Usya |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 154 Регистрация: 7.6.2005 Репутация: нет Всего: нет |
tishaishii, все конечно хорошо.
С предложенным щас постараюсь разобраться, но есть ли что-либо универсальное, не зависящее от операционки? Я имею ввиду винду и линухи/юнихи. --------------------
Я не волшебник, я только учусь... |
|||
|
||||
korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 31 Всего: 61 |
![]() Это сообщение отредактировал(а) korob2001 - 24.2.2006, 10:13 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Perl" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |