Задать вопрос

Почему консольная программа перестает работать спустя время?

У меня есть программа на питоне, которая постоянно в цикле работы. Она запущена на windows server в консольном окне. При скрытии окна или просто без долгой активности на сервере программа перестает работать, либо работает очень медленно. Я знаю, что windows понижает приоритет программы спустя время. Как этого можно избежать? Подойдет ли print(..., flush=True)?
  • Вопрос задан
  • 2331 просмотр
Подписаться 3 Простой 9 комментариев
Пригласить эксперта
Ответы на вопрос 3
Lord_of_Rings
@Lord_of_Rings Куратор тега Python
Дунадан - северный странник. Злой, но очень добрый
Иногда программа стопорится из-за случайного выделения текста в окне консоли. Много раз на это накалывался. Случайно нажмешь мышкой в окне, активируется выделение и программа начинает тормозить, принты не работают. Навряд ли у вас такое, но так, на всякий случай.
Ответ написан
Комментировать
saboteur_kiev
@saboteur_kiev Куратор тега Python
software engineer
дело в самом питоне. думаю он подглючивает.
нет никаких настроек у виндовс, чтобы брать и понижать приоритет до неработоспособности, тем более что на самом деле именно приоритет автоматически не понижается. Просто если программа ничего не делает, может засвопиться частично.
Но вот в нестабильности самого питона я уже убедился несколько раз. Надо пересматривать свою программу и свой цикл, какие там используются библиотеки и что с ними происходит. Например SimpleHTTP веб сервер на питоне не очень стабильный, точнее надо все возможные ситуации в нем предусмотреть и эксепшены правильно прописать, без этого может зависнуть просто.
Ответ написан
@APh
Модифицируйте программу до Cython'а, скомпилируйте в машинные коды, чтобы не зависеть от Питон-интерпретатора в реальной работе программы, запускайте нужную функцию (главную) из программы на Си из 4 строк или любого др. места. Таких программ простейших в Сети битком. Даже, если Си не знаете, затруднений не вызовет
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы