scheduler.adder module¶
定时任务添加器
本模块实现定时任务添加器,用于添加定时任务,支持多个任务的添加。
ScheduleAdder
用于添加单个任务,
MultipleAdder
用于添加多个任务。
示例
假设有一个函数,需要在指定时间执行:
import logging
from datetime import datetime, timedelta
def func(a, b, c):
logging.info('a=%s, b=%s, c=%s', a, b, c)
使用 ScheduleAdder
添加单个任务:
single_adder = ScheduleAdder(func, run_time=datetime(2023, 1, 1))
single_adder(1, 2, 3)
使用 MultipleAdder
添加多个任务:
job_adder = MultipleAdder(func)
job_adder.schedule('schedule', run_time=datetime(2023, 1, 1))(1, 2, 3)
adder_later = job_adder.schedule('later', run_time=timedelta(minutes=5))
adder_later(4, 5, 6)
job_adder.schedule()(7, 8, 9)
- class scheduler.adder.MultipleAdder(func: Callable[[P], None])[源代码]¶
基类:
Generic
[P
]多个定时任务添加器
- func¶
被绑定的函数
- Type:
Callable
- schedule(id: str | None = None, name: str | None = None, *, run_time: datetime | timedelta | None = None, replace: bool = True) ScheduleAdder[P] [源代码]¶
规划单次定时任务
- 返回:
单次定时任务添加器
- 返回类型:
引用
- class scheduler.adder.ScheduleAdder(func: Callable[[P], None], *, id: str | None = None, name: str | None = None, run_time: datetime | timedelta | None = None, replace: bool = True)[源代码]¶
基类:
Generic
[P
]定时任务添加器
绑定调用的函数,调用时添加对应的定时任务
- func¶
被绑定的函数
- Type:
Callable
- id¶
任务ID,唯一值
- Type:
str | None
- name¶
用于呈现的任务名称,往往无用,请勿和ID混淆
- Type:
str | None
- run_time¶
运行的时间 运行时间,指定时间、时间差或即刻发送
- Type:
datetime | timedelta | None
- replace¶
是否替换已存在的任务
- Type:
bool