执行器
APScheduler提供的执行器根据调度器和工作方式不同,主要有以下这些。
ThreadPoolExecutor
,线程池执行器。ProcessPoolExecutor
,进程池执行器。AsyncIOExecutor
,基于asyncio的执行器,搭配AsyncIO调度器使用。GeventExecutor
,基于Gevent的执行器,搭配Gevent调度器使用。TwistedExecutor
,基于Twisted的执行器,搭配Twisted调度器使用。DebugExecutor
,调试执行器,不使用任何线程和进程。
与任务存储器一样,执行器一般也是初始化成一个字典,之后传递给调度器的executors
参数来设定。具体可见以下示例。
from apscheduler.schedulers.background import BackgroundScheduler
from apscheduler.executors.pool import ThreadPoolExecutor, ProcessPoolExecutor
executors = {
'default': ThreadPoolExecutor(20),
'process': ProcessPoolExecutor(5)
}
scheduler = BackgroundScheduler(executors=executors)
同样的,任务可以通过.add_job()
的executor
参数来设定所要使用的执行器。