亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java循環(huán)調(diào)用多個timer實(shí)現(xiàn)定時任務(wù)

 更新時間:2020年07月28日 10:24:49   作者:張志勇-  
這篇文章主要介紹了Java循環(huán)調(diào)用多個timer實(shí)現(xiàn)定時任務(wù),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

通常在使用java實(shí)現(xiàn)定時任務(wù)時,有兩種方法,一種是spring中的schedule(cron = " */5 * * * ?"),另一種就是java中的timer,

timer+TimerTask配合實(shí)現(xiàn),這里附上Timer對象的一些常用api

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

下面列舉一個循環(huán)創(chuàng)建TimerTask的實(shí)例:

 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");
     //一個對象,在指定的開始時間和結(jié)束時間,分別進(jìn)行不同的操作,如商品的定時上架、下架。
    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() { //新建一個定時任務(wù)
         @Override
         public void run() {
           System.out.println("任務(wù)開始了"+a);
         }
       },startTime);       
       timer.schedule(new TimerTask() {
         @Override
         public void run() {
           System.out.println("任務(wù)結(jié)束了"+a);         }
       },endTime); 
     }
     //timer的過程中不會阻塞,不影響下面代碼的執(zhí)行
     for (int i=0;i<=20;i++) {
       System.out.println("=====" + i);
     }
   }

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • java實(shí)現(xiàn)策略模式使用示例

    java實(shí)現(xiàn)策略模式使用示例

    在使用圖像處理軟件處理圖片后,需要選擇一種格式進(jìn)行保存。然而各種格式在底層實(shí)現(xiàn)的算法并不相同,這剛好適合策略模式。編寫程序,演示如何使用策略模式與簡單工廠模式組合進(jìn)行開發(fā)
    2014-02-02
  • java使用@Scheduled注解執(zhí)行定時任務(wù)

    java使用@Scheduled注解執(zhí)行定時任務(wù)

    這篇文章主要給大家介紹了關(guān)于java使用@Scheduled注解執(zhí)行定時任務(wù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • SpringCloud中的Consul詳解

    SpringCloud中的Consul詳解

    這篇文章主要介紹了SpringCloud中的Consul知識,本文使用的是docker-compose方式管理consul服務(wù),直接啟動即可,需要的朋友可以參考下
    2022-03-03
  • java 反射調(diào)用Service導(dǎo)致Spring注入Dao失效的解決方案

    java 反射調(diào)用Service導(dǎo)致Spring注入Dao失效的解決方案

    這篇文章主要介紹了java 反射調(diào)用Service導(dǎo)致Spring注入Dao失效的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • IDEA .iml文件及.idea文件夾超詳細(xì)講解

    IDEA .iml文件及.idea文件夾超詳細(xì)講解

    iml文件是IntelliJ IDEA自己創(chuàng)建的模塊文件,用于java應(yīng)用開發(fā),存儲一些模塊相關(guān)的信息,比如一個Java組建,插件組建,Maven組建等,這篇文章主要介紹了IDEA .iml文件及.idea文件夾,需要的朋友可以參考下
    2023-09-09
  • 詳解Java爬蟲利器Jsoup

    詳解Java爬蟲利器Jsoup

    Jsoup是一款Java語言開發(fā)的HTML解析器,用于解析HTML文檔以及對HTML文檔進(jìn)行操作,處理等,本文就將詳細(xì)給大家介紹一下Java中的爬蟲利器Jsoup,感興趣的同學(xué)可以參考一下
    2023-06-06
  • Java中的Native關(guān)鍵字講解

    Java中的Native關(guān)鍵字講解

    本文介紹了Java中的Native關(guān)鍵字,native關(guān)鍵字是架起本機(jī)語言和JAVA之間鴻溝的橋梁。如果我們的軟件與硬件的交互在使用預(yù)先存在的代碼時更有效,那么這可以作為一個關(guān)鍵環(huán)節(jié)。與從頭開始設(shè)計(jì)新的應(yīng)用程序代碼相比,只要可以避免,它就可以使實(shí)現(xiàn)工作更少,下面來了解集體內(nèi)容
    2021-12-12
  • Java零基礎(chǔ)入門數(shù)組

    Java零基礎(chǔ)入門數(shù)組

    數(shù)組對于每一門編程語言來說都是重要的數(shù)據(jù)結(jié)構(gòu)之一,當(dāng)然不同語言對數(shù)組的實(shí)現(xiàn)及處理也不盡相同。Java?語言中提供的數(shù)組是用來存儲固定大小的同類型元素
    2022-04-04
  • Java實(shí)現(xiàn)數(shù)字轉(zhuǎn)成英文的方法

    Java實(shí)現(xiàn)數(shù)字轉(zhuǎn)成英文的方法

    這篇文章主要介紹了Java實(shí)現(xiàn)數(shù)字轉(zhuǎn)成英文的方法,涉及java數(shù)組與字符串的相關(guān)操作技巧,需要的朋友可以參考下
    2015-05-05
  • springcloud-feign調(diào)用報(bào)錯問題

    springcloud-feign調(diào)用報(bào)錯問題

    這篇文章主要介紹了springcloud-feign調(diào)用報(bào)錯問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08

最新評論