Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео.
Использование библиотеки schedule
Сегодня полезная библиотека schedule, она позволяет запускать функции по расписанию. Конечно, выполнение по расписанию можно организовать разными другими способами, но schedule специально ориентирована на такое использование.
Библиотеку эту, кстати, нельзя назвать стандартной. В стандартный пакет Python она не входит. Но её можно легко установить с помощью pip в Windows или pip3 в Linux.
>pip3 install schedule
и всё.
schedule принимать элементы расписания: план выполнения задания и имя функции для запуска с возможными параметрами. План выполнения как обычно определяется или интервалом или точным указанием времени и интервалом. Далее через какой-либо промежуток вызывается метод run_pending(), который проверяет планы выполнения и при необходимости выполняет задания. См. программу ниже
Фрагмент вывода программы на консоль
Выполнение в цикле
Через 10 секунд
Выполнение в цикле
Выполнение в цикле
Выполнение в цикле
Выполнение в цикле
Выполнение в цикле
Выполнение в цикле
Выполнение в цикле
Выполнение в цикле
Выполнение в цикле
Выполнение в цикле
Через 1 минуты
Через 10 секунд
Выполнение в цикле
Выполнение в цикле
В программе ниже я привожу, как мне кажется очень полезный пример, как можно использовать библиотеку schedule вместе с многопоточностью. В основном потоке запускается поток thr, в котором реализован запуск функции mess() по расписанию. При этом в основном потоке может реализовываться какой-то свой алгоритм.
Фрагмент вывода программы на консоль
Цикл в основном потоке
Цикл в основном потоке
Цикл в основном потоке
Цикл в основном потоке
Цикл в основном потоке
Цикл в основном потоке
Вызов из потока каждые 10 секунд
Цикл в основном потоке
Цикл в основном потоке
Цикл в основном потоке
Вот в общем то и всё. Мне кажется особых пояснений не требуется.
Хорошего программирования. Оставляйте свои комментарии, не забывайте про лайки и подписывайтесь на мой канал programmer's notes.