#python #scheduled-tasks #apscheduler
Вопрос:
В документах APScheduler есть:
По умолчанию одновременно разрешается запускать только один экземпляр каждого задания. Это означает, что если задание должно быть выполнено, но предыдущий запуск еще не завершен, то последний запуск считается осечкой. Можно задать максимальное количество экземпляров для конкретного задания, которое планировщик разрешит запускать одновременно, используя аргумент
max_instances
ключевого слова при добавлении задания.
Так что, если у меня есть:
def test_func(name):
print('Hello, ' name)
from apscheduler.schedulers.background import BackgroundScheduler
scheduler = BackgroundScheduler()
scheduler.add_job(test_func, 'date', run_date=date(2021, 12, 24), args=['John'])
scheduler.add_job(test_func, 'date', run_date=date(2021, 12, 24), args=['Mary'])
scheduler.add_job(test_func, 'date', run_date=date(2021, 12, 24), args=['Jack'])
Будет test_func
ли запускаться только один или три раза?
Комментарии:
1. Почему бы тебе просто не попробовать и не посмотреть, что произойдет?
Ответ №1:
Все это разные расписания (задания на жаргоне APScheduler 3), поэтому все они будут выполняться одновременно.