Python APScheduler не запускает все задания - PullRequest
0 голосов
/ 25 января 2020

Я пытаюсь запустить код, который запускает некоторые функции каждый час, я использовал модуль APScheduler, чтобы сделать планировщик, чтобы сделать это в нужный интервал (1 час). Моя проблема в том, что когда я запускаю код, он запускает не все функции, а менее 18 (общее количество функций, которые у меня есть).

Читая документацию модуля, я понял, что если я установлю ThreadPoolExecutor Я могу установить количество максимальных функций для запуска. Это сработало, когда я установил параметр minutes = 5, но когда я установил hours = 1, происходит то, что я сказал выше.

Мне нужно, чтобы код запускал каждую функцию каждый час , кто-нибудь знает, что я могу сделать?

Приведенный ниже код пытается сделать то, что я сказал

from apscheduler.schedulers.background import BackgroundScheduler
from apscheduler.executors.pool import ThreadPoolExecutor, ProcessPoolExecutor
from module import func1
from module import func1
...
from module import func18

total_func = [func1, ... , func18]

executors = {
    'default': ThreadPoolExecutor(18),
    'processpool': ProcessPoolExecutor(18)
    }
scheduler = BackgroundScheduler(executors=executors)

start_time = '2020-01-24 17:59:00'
end_time = '2020-01-26 17:59:00'

hours = 1

for func in total_func:
    scheduler.add_job(func, 'interval', hours = horas,
                      start_date = start_time,
                      end_date = end_time)
scheduler.start()

Спасибо!

...