国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

Java循環調用多個timer實現定時任務

瀏覽:24日期:2022-08-28 08:50:46

通常在使用java實現定時任務時,有兩種方法,一種是spring中的schedule(cron = ' */5 * * * ?'),另一種就是java中的timer,

timer+TimerTask配合實現,這里附上Timer對象的一些常用api

Timer()   創建-個新計時器。Timer(boolean isDaemon) 創建一個新計時器, 可以指定其相關的線程作為守護程序運行。Timer(String, name) 創建一個新計時器,其相關的線程具有指定的名稱。Timer(String, name, boolean isDaemon) 創建一個新計時器, 可以指定其相關的線程作為守護程序運行。cancel() 終止此計時器,丟棄所有當前已安排的任務。.purge () 從此計時器的任務隊列中移除所有己取消的任務。schedule(TimerTask, task, Date time) 安排在指定的時間執行指定的任務。schedule (TimerTask task, Date firstTime, long period) 安排指定的任務在指定的時間開始進行重復的固定延遲執行。schedule (TimerTask task, long, delay)   安排在指定延遲后執行指定的任務。schedule (TimerTask task, 1ong. delay, long period) 安排指定的任務從指定的延遲后開始進行重復的固定延遲執行。scheduleAtFixedRate (TimerTask task,Date firstTime, long period) 安排指定的任務在指定的時間開始進行重復的固定速率執行。scheduleAtFixedRate (TimerTask task, long delay, long period) 安排指定的任務在指定的延遲后開始進行重復的固定速率執行。

下面列舉一個循環創建TimerTask的實例:

public static void main(String[] args) throws ParseException { ArrayList<TimeClass> list = new ArrayList<>(); //TimeClass是自己寫的一個類,只有兩個字段,private String startTime和private String endTime; list.add(new TimeClass('2020-07-23 20:08:00 ','2020-07-23 20:08:15')); list.add(new TimeClass('2020-07-23 20:08:30 ','2020-07-23 20:08:00')); DateFormat df = new SimpleDateFormat('yyyy-MM-dd HH:mm:ss'); //一個對象,在指定的開始時間和結束時間,分別進行不同的操作,如商品的定時上架、下架。 Timer timer = new Timer(); for(int i = 0; i < list.size(); i++){ Date startTime = df.parse(list.get(i).getStartTime()); Date endTime = df.parse(list.get(i).getEndTime()); int a=i; timer.schedule(new TimerTask() { //新建一個定時任務 @Override public void run() { System.out.println('任務開始了'+a); } },startTime); timer.schedule(new TimerTask() { @Override public void run() { System.out.println('任務結束了'+a); } },endTime); } //timer的過程中不會阻塞,不影響下面代碼的執行 for (int i=0;i<=20;i++) { System.out.println('=====' + i); } }

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 孟村| 仙居县| 绍兴县| 监利县| 白河县| 南澳县| 尼木县| 砀山县| 札达县| 略阳县| 左权县| 额尔古纳市| 金川县| 普兰县| 昭觉县| 连南| 义马市| 松阳县| 聂拉木县| 康定县| 靖远县| 福泉市| 桦南县| 若尔盖县| 鄂托克旗| 溆浦县| 茂名市| 新闻| 高邑县| 平南县| 合肥市| 顺平县| 綦江县| 淅川县| 义马市| 海淀区| 开原市| 晋州市| 兰西县| 嘉黎县| 塔河县|