schedule的四種用法
schedule(task,time)
在時間等於或者超過time的時候,執行並且執行一次task
schedule(task,time,period)
time 首次執行任務的時間
period 執行一次task的時間間隔
schedule(task,delay)
等待delay毫秒之後,執行並且執行一次task
scheduleatfixedrate(task,time,delay)
區別在於如果時間設定為當前時間之前,比如:當前時間0點0分06秒,2秒鐘執行一次,執行時間0點0分00秒,scheduleatfixedrate會趕進度,執行三次,
scheduleatfixedrate(task,delay,period)
相對於任務開始時間,不是任務完成時間,存在併發性
task下的cancel() 取消任務
scheduleexecutiontime()獲得任務執行時間
timer下的cancel()取消所有任務
purge()移除所有已經取消的任務,返回值是取消的任務數
timer缺陷
管理併發任務的缺陷:timer有且僅有乙個執行緒去執行定時任務,如果存在多個任務,且任務時間過長,會導致執行結果與預期不符。
當丟擲任務異常時的缺陷:如果丟擲任務執行時異常,會停止所有任務的執行
linux定時任務 at定時任務
at命令是一次性定時計畫任務,at的守護程序atd會以後臺模式執行,檢查作業佇列來執行作業。atd守護程序會檢查系統上的乙個特殊目錄來獲取at命令的提交的作業,預設情況下,atd守護程序每60秒檢查一次目錄,有作業時,會檢查作業執行時間,如果時間與當前時間匹配,則執行此作業。注意 at命令是一次性定...
at定時任務
at的守護程序每60秒檢查一次作業佇列,有作業時檢查作業,時間恰好達到,則執行作業。前提 保證atd程序已經啟動,檢查atd程序是否啟動 ps ef grep atd。atd的命令格式 at 選項 時間 ctrl d 結束at命令的輸入。選項 m 任務完成後給使用者傳送郵件,沒有標準輸出。i atg...
at定時任務
1 at是只執行一次,執行完後任務刪除。at的守護程序atd會以後臺模式執行,檢查作業佇列來執行。2 預設 atd每60秒巡邏一次,有作業時候,檢查作業時間,如果和當前時間一樣,就執行任務 3 在使用at命令的時候,一定要保證他的守護者atd程序的啟動。用ps ef grep atd來檢視atd是否...