Quartz任務觸發流程如下:
創建一個JobDetail對象,該對象包含任務的詳細信息,如任務名稱、任務組、任務類等。
創建一個Trigger對象,該對象定義了任務觸發的條件,如觸發時間、重復規則等。
將JobDetail和Trigger對象注冊到Scheduler中,Scheduler是Quartz的核心調度器,負責管理和執行任務。
Scheduler在指定的時間點觸發任務,即根據Trigger的定義,觸發對應的Job執行。
Scheduler將JobDetail對象交給一個可用的工作線程執行。
工作線程執行Job的execute()方法,即執行具體的任務邏輯。
任務執行完成后,Scheduler會根據Trigger的定義,繼續觸發下一次任務執行,直到滿足終止條件。
如果Trigger被暫停或移除,Scheduler將不再觸發與之關聯的Job。
需要注意的是,Quartz還提供了各種調度選項和功能,如任務間的依賴關系、任務的持久化存儲、任務的并發執行等。