Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Python: Общие вопросы > Произвольное прерывание функции |
Автор: YahоО 26.4.2023, 17:47 | ||
Это пример выдуман специально чтобы можно было задать понятный вопрос. Предположим что функция а работает длительное время, и в целом выполнение такого кода займет очень много времени например час, а если я не терпеливый и хочу завершить ее минут через 5, то как это сделать, чтобы результаты не пропали и были распечатаны? |
Автор: Oldshelf 26.4.2023, 18:26 |
1. Сделать выход https://ru.stackoverflow.com/questions/841014/python-3-%D0%BA%D0%B0%D0%BA-%D0%BE%D1%82%D1%81%D0%BB%D0%B5%D0%B4%D0%B8%D1%82%D1%8C-%D0%BD%D0%B0%D0%B6%D0%B0%D1%82%D0%B8%D0%B5-%D0%BD%D0%B0-%D0%BA%D0%BD%D0%BE%D0%BF%D0%BA%D0%B8. 2. Периодически, при i кратном 100, к примеру (чтобы не сильно замедлять выполнение цикла), проверять какой-нибудь контрольный файл. Если файл не пустой - выходить из цикла. Чтобы прервать выполнения скрипта - записать любой однобайтовый символ в файл. Можно сделать в виде другого скрипта, получающего POST-запросы от кнопки на HTML-странице. По нажатию будет записываться тот флаг в файл. При выходе из цикла очищать файл. |
Автор: YahоО 26.4.2023, 19:07 |
Oldshelf, спасибо за помощь! |