APScheduler 學習心得

weixin_34041003發表於2019-01-22

這兩天因為專案需要用到任務排程,調研了一下認為APScheduler 是比較適合的。沒有celery那麼重,也能覆蓋大部分的需求,可以持久化任務,也可以新增刪除任務,因此選用了APScheduler。

根據官方文件,整理了一下心得。

啟動

1.一旦啟動了scheduler,你就不再能對scheduler的配置進行修改。

新增任務

1.如果你的任務是持久化的,那麼你一定要給job設定ID,並且在add_job()時使用replace_existing=True,否則在你每次應用重啟的時候將會得到一個新的job副本。如果你設定了ID,卻沒有使用replace_existing=True ,那麼會造成,當新增重複ID的任務時,程式報錯。

2.如果想要立即啟動任務,可以在add_job()時提交trigger引數

刪除任務

1.兩種刪除任務的方法中,推薦根據id刪除。scheduler.remove_job('my_job_id')

暫停、重啟任務

1. 獲取job例項。使用pause()

2. 獲取job例項。使用resume()