Python APScheduler執(zhí)行使用方法詳解
APScheduler就是定時進行周期性的運行某些程序,在語言程序編寫中,一直會遇到些定時服務,有時是根據(jù)時間定時,有時在固定的位置上進行定制,還有一些是因為儲蓄出現(xiàn)的定時,不管是處于哪一種定時類型,基本上都可以使用APScheduler模塊進行協(xié)助工作,本文給大家介紹定時模塊的使用方法。
APScheduler與第三方模塊安裝方式一樣,使用pip,安裝過程如下:
1、APScheduler支持觸發(fā)器:
DateTriggerIntervalTriggerCronTrigger
2、APScheduler支持的Executor
AsyncIOExecutorGeventExecutorThreadPoolExecutor
APScheduler使用示例:
import asyncioimport datetimescheduler.add_job(async_func, trigger, args=['jobstore second, executor = second'], id='cron_func_test_2', jobstore='second', executor='second')
大家?guī)雸?zhí)行代碼看下輸出結果,小編這篇內(nèi)容只是舉例常規(guī)內(nèi)容,還有更多的比如在執(zhí)行器任務完成是,使用調(diào)度器連接,進行添加,修改等等
知識點擴展:
在APScheduler中有四個組件 觸發(fā)器(trigger)包含調(diào)度邏輯,每一個作業(yè)有它自己的觸發(fā)器,用于決定接下來哪一個作業(yè)會運行。除了他們自己初始配置意外,觸發(fā)器完全是無狀態(tài)的。簡單說就是應該說明一個任務應該在什么時候執(zhí)行。 作業(yè)存儲(job store)存儲被調(diào)度的作業(yè),默認的作業(yè)存儲是簡單地把作業(yè)保存在內(nèi)存中,其他的作業(yè)存儲是將作業(yè)保存在數(shù)據(jù)庫中。一個作業(yè)的數(shù)據(jù)將在保存在持久化作業(yè)存儲時被序列化,并在加載時被反序列化。調(diào)度器不能分享同一個作業(yè)存儲。 執(zhí)行器(executor)處理作業(yè)的運行,他們通常通過在作業(yè)中提交制定的可調(diào)用對象到一個線程或者進城池來進行。當作業(yè)完成時,執(zhí)行器將會通知調(diào)度器。 調(diào)度器(scheduler)任務控制器:通過配置executor、jobstore、trigger,使用線程池(ThreadPoolExecutor默認值20)或進程池(ProcessPoolExecutor 默認值5)并且默認最多3個(max_instances)任務實例同時運行,實現(xiàn)對job的增刪改查等調(diào)度控制你需要選擇合適的調(diào)度器,這取決于你的應用環(huán)境和你使用APScheduler的目的。通常最常用的兩個:
BlockingScheduler:當調(diào)度器是你應用中唯一要運行的東西時使用。
BackgroundScheduler:當你不運行任何其他框架時使用,并希望調(diào)度器在你應用的后臺執(zhí)行。
相關文章:
1. ASP常用日期格式化函數(shù) FormatDate()2. ASP.NET Core實現(xiàn)中間件的幾種方式3. PHP設計模式中工廠模式深入詳解4. ASP中實現(xiàn)字符部位類似.NET里String對象的PadLeft和PadRight函數(shù)5. XML入門的常見問題(二)6. 如何在jsp界面中插入圖片7. 在JSP中使用formatNumber控制要顯示的小數(shù)位數(shù)方法8. 利用CSS3新特性創(chuàng)建透明邊框三角9. 將properties文件的配置設置為整個Web應用的全局變量實現(xiàn)方法10. jsp實現(xiàn)textarea中的文字保存換行空格存到數(shù)據(jù)庫的方法
