zl程序教程

您现在的位置是:首页 >  后端

当前栏目

python高级线程编程-定时器和周期任务(三)

Python线程编程 任务 高级 定时器 周期
2023-06-13 09:18:44 时间

使用APScheduler库实现定时器和周期任务

APScheduler是一个Python库,可以用来实现定时器和周期任务。它支持多种调度器和触发器类型,例如日期、时间间隔和cron表达式等。

下面是一个使用APScheduler库实现定时器的示例代码:

from apscheduler.schedulers.blocking import BlockingScheduler

def say_hello():
    print("Hello World")

scheduler = BlockingScheduler()
scheduler.add_job(say_hello, 'interval', seconds=5)
scheduler.start()

这里我们定义了一个函数say_hello(),使用BlockingScheduler()方法创建了一个调度程序对象scheduler,然后使用scheduler.add_job()方法添加say_hello()函数作为任务。第一个参数'interval'指定了任务类型为时间间隔,第二个参数seconds=5指定了时间间隔为5秒。

除了定时器,我们还可以使用APScheduler库创建一个周期任务,如下所示:

from apscheduler.schedulers.blocking import BlockingScheduler

def say_hello():
    print("Hello World")

scheduler = BlockingScheduler()
scheduler.add_job(say_hello, 'interval', seconds=5)
scheduler.start()

这里我们定义了两个函数,一个是say_hello()函数,另一个是start_task()函数。start_task()函数在每次调用say_hello()函数后,将使用scheduler.add_job()方法创建一个新的定时器并添加到调度程序中,从而实现周期任务。