Как стать автором
Обновить

Комментарии 6

А если скрипт завис или выполняется достаточно долго — как эти ситуации отрабатываются?
Я не сталкивался со случаями, чтобы скрипты зависали. Они могут либо выполняться, либо нет. Проверку на то, выполнился ли скрипт, можно добавить в последний описанный метод. Другой вопрос — проверка, выполнил ли скрипт то, что мы хотели или нет. У меня есть несколько решений, в ближайшие дни напишу об этом.
Чтоб скрипт выполнялся долго — достаточно дать ему большой объем данных. Так или иначе, бывает, что скрипт выполняется, условно, час.
И нас это не устраивает. Надо его прибить, допустим таймаут 5 минут, если больше — прибить скрипт и дальше адекватно обработать эту ситуацию.
Как это сделать?
Если именно прибить — то вызвать метод «destroy» объекта «Process», исполняющего вашу комманду.
Честно, не пробовал прибивать сам скрипт.
Использовал скрипт, который прибивал системный процесс, в результате чего происходил soft reboot:
su -c kill -9 `ps | grep system_server | awk '{print $2}'`

Если каким-то образом будет известно имя процесса или его id, то можно таким скриптом прибивать другие скрипты
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории