上節中學到了quartz 如何解析corn-like 表示式,其實觸發器中最核心的地方就是處理時間,
這一節讓我們來了解下quartz中的觸發器有哪些吧:
我想大家一定首先想到的就是處理corn-like的觸發器吧,它就是crontriggerimpl觸發器,還是看一下類圖,看看有多少觸發器,和它們之間的關係吧
如上圖,所有的觸發器繼承了
itrigger
介面和abstracttrigger
這個抽象類,類圖稍微有點亂,但大概也能看清它們的關係。
正如我們看到的,我們羅列一下上圖的觸發器吧:
crontriggerimpl
使用corn-like表示式的乙個觸發器,觸發時機比較容易定製
calendarintervaltriggerimpl
根據日曆的時間間隔重複執行的乙個觸發器
dailytimeintervaltriggerimpl
根據每天重複的時間間隔
******triggerimpl
簡單的觸發器,比如只執行一次這樣的
我們稍微看一下
itrigger
這個介面,就會發現
triggerkey
相當於觸發器的乙個主鍵,唯一標識乙個觸發器,並且乙個觸發器關聯乙個
jobkey
(相當於作業主鍵),比如還有getnextfiretimeutc()這樣類似的介面方法,這個方法應該是得到下一次執行作業的時間。也就是乙個觸發器對應乙個作業。
我們在用quartz的時候,對例項化上面哪些觸發器是不可見的,是由triggerbuilder這個類完成的。
可以看一下這些builder類的結構是怎麼的,如下圖:
很明顯乙個觸發器對應乙個builder了。
下面我們就簡單的******schedulebuilder來完成乙個例子吧:
1:job**:很簡單輸出當前時間
[csharp]view plain
copy
public
class
myjob : ijob
}
2:排程**:
[csharp]view plain
copy
static
void
main(
string
args)
3:執行結果 間隔5s執行:
總結:認識了
quartz
中的觸發器
全部**:
[csharp]view plain
copy
using
system;
using
system.collections.generic;
using
system.linq;
using
system.text;
using
quartz.impl;
namespace
quartz.demo
} public
class
myjob : ijob
}
第八節 函式
函式的特性 減少 重複 使程式變得可擴充套件 使程式變得易維護 乙個函式只做一件事情 變數作用域 python 中,程式的變數並不是在哪個位置都可以訪問的,訪問許可權決定於這個變數是在 賦值的。變數的作用域決定了在哪一部分程式可以訪問哪個特定的變數名稱。python的作用域一共有4種,分別是 以 l...
編譯原理 第八節
分為兩大類 自頂向下分析 和 自底向上分析 其中前者又細分為 遞迴下降分析法 包含回溯的遞迴下降分析法和不含回溯的遞迴下降分析法 和非遞迴的 分析法 ll分析法 後者分為算符優先分析法和lr分析法。思想 從語法的開始符號出發,試探使用不同產生式,尋找匹配於輸入符號串的推導。或者說,從對應文法開始符號...
python第八節(函式2)
內建函式 map zip 返回1 10的奇數列表 for i in range 1,10,2 print i li for i in range 1,10 if i 2 1 print i print li filter 過濾 defis odd n return n 2 1print list f...