Nano Hash - криптовалюты, майнинг, программирование

Как установить тайм-аут

Я использую исполняемый файл bash для запуска скрипта python в цикле

Иногда браузер (запускаемый скриптом python) перестает загружаться и перестает работать в течение нескольких часов, пока я вручную не приду и не закрою окно, что заставит исполняемый файл повторно запустить скрипт python. Как я могу сделать это автоматически? Если в течение 2 минут в терминале не отображается новая строка, закройте код Python и запустите его снова.

Это то, что у меня есть прямо сейчас:

while true ; do 
     python3 /Users/Name/Desktop/pythoncode.py
done

Он будет запускать код в цикле. Теперь я хочу, чтобы он закрыл код и запустил его снова, если в терминале не выводится ни одна строка в течение 2 минут (скрипт python показывает свой прогресс в терминале)

Спасибо и счастливого нового года

31.12.2020

  • stackoverflow.com/questions/60738749/ это выглядит многообещающе 31.12.2020
  • Пожалуйста, повторите по теме и как спросить из вступительного тура. Также см. Как много исследований и Контрольный список вопросов. Похоже, вы не удосужились поискать столько, сколько тайм-аут Python, поэтому этот вопрос преждевременный. 31.12.2020
  • Я много искал, прежде чем опубликовать этот вопрос. Я считаю, что вы неправильно понимаете вопрос. Я не хочу, чтобы время ожидания истекло через 2 минуты, если pythoncode.py выводит на стандартный вывод. если это так, он должен работать вечно и не быть тайм-аутом 02.01.2021
  • @Prune Я хочу завершить скрипт Python тогда и только тогда, когда он ничего не выводит на терминал в течение 2 минут. Иначе цикл навсегда 02.01.2021
  • Я думаю, вы неправильно понимаете путь решения. Логика тайм-аута по-прежнему применяется. Вы должны установить процесс для обнаружения вывода, а другой - для тайм-аута через 2 минуты. Если первый получает какой-либо вывод, то он убивает процесс тайм-аута. Если процесс тайм-аута достигает своего предела в 2 минуты, он завершает задание. В вашем вопросе не показана попытка ни одного из процессов, хотя вы описали функциональность. 02.01.2021

Ответы:


1

Я думаю, что проблема должна быть решена в pythoncode.py. Вы можете определить, было ли изменение за последние 2 минуты, используя метод setInterval, и увеличить счетчик для каждого действия, выполняемого кодом. Если он не изменился за последние 2 минуты, вы можете закрыть его. Другой скрипт запустит его снова.

Python-эквивалент setInterval()?

В другом файле Python, который будет запускать скрипт, вы можете использовать os.system()

Запускать скрипт Python, только если он не запущен

31.12.2020
  • Что это? Смесь bash и python? Даже если это псевдокод, он все равно не отвечает на вопрос, который хочет перезапустить скрипт только при отсутствии вывода в течение 2 минут. 31.12.2020
  • Вы правы, я не так понял. 31.12.2020
  • Спасибо за ваш ответ. Я попробую это. Извините, не могу проголосовать, так как репутация менее 15. Ха-ха. Не знаю, почему у него -1 голос. Кажется очень полезным. Спасибо еще раз : ) 31.12.2020
  • Таким образом, я хочу завершить скрипт Python, если он ничего не выводит на терминал в течение 2 минут. 31.12.2020
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..