色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何動態修改cron參數呢?

jf_78858299 ? 來源:SpringBoot ? 作者:林祥纖 ? 2023-04-12 11:04 ? 次閱讀

如何動態修改cron參數呢?那么我們一起看看具體怎么實現,先看下本節大綱:

(1)簡單方式:修改定時任務的執行周期;

(2)動態修改定時任務的執行周期;

接下來看下本節的具體內容:

(1)簡單方式:修改定時任務的執行周期;

按正常來講,修改定時任務的執行周期,把服務停下來,改下任務的cron參數,再重啟服務就搞搞定了。這種方式很簡單,沒有可說的,但是有沒有一種可能,在不停服務的情況下,就可以動態的修改任務的cron參數呢?哈哈,那是必須的必。

(2)動態修改定時任務的執行周期;

首先我們先會回顧下,我們之前是使用了@Scheduled(cron =“0/5 * * * * *”)這種方式適用于固定任務周期的任務,若要修改任務執行周期,只能走“停服務—修改任務執行周期—重啟服務”這條路。那么如何動態修改呢,我們看下步驟:

① 在定時任務類上增加@EnabledScheduling注解,并實現SchedulingConfigurer接口。

② 設置一個靜態的cron,用于存放任務執行周期參數。

③ 開啟一個線程,用于模擬實際業務中外部原因修改了任務執行周期。

④ 設置任務觸發器,觸發任務執行。

具體的代碼如下:

package com.kfit.task;

import java.util.Date;

import org.springframework.scheduling.Trigger;

import org.springframework.scheduling.TriggerContext;

importorg.springframework.scheduling.annotation.EnableScheduling;

importorg.springframework.scheduling.annotation.SchedulingConfigurer;

importorg.springframework.scheduling.config.ScheduledTaskRegistrar;

import org.springframework.scheduling.support.CronTrigger;

import org.springframework.stereotype.Component;

/**

  • Spring @Scheduled定時任務動態修改cron****參數
  • @author Angel --守護天使
  • @version v.0.1
  • @date 2017年4月6日

*/

@Component

@EnableScheduling

**public **class TaskCronChange implements SchedulingConfigurer{

**public ****static** String  *cron* ; 



**public** TaskCronChange() {

    //默認情況是:每5秒執行一次.

    *cron* = "0/5 * * * * *";

    **new** Thread(**new** Runnable() {

      

       // 開啟新線程模擬外部更改了任務執行周期.

       @Override

       **public ****void** run() {

          **try** {

              // 讓線程睡眠 15秒.

              Thread. *sleep* (15000);

          } **catch** (InterruptedException e) {

              e.printStackTrace();

          }

           //修改為:每10秒執行一次.

          *cron* = "0/10 * ** * *";

           System. ***err*** .println("cron change to:"+ *cron* );

       }

   }).start();;

}

 

@Override

**public ****void** configureTasks(ScheduledTaskRegistrar taskRegistrar) {

   Runnable task = **new** Runnable() {

       @Override

       **public ****void** run() {

          //任務邏輯代碼部分.

          System. ***out*** .println("TaskCronChangetask is running ... "+ **new** Date());

       }

   };

   Trigger trigger = **new** Trigger() {

       @Override

       **public** Date nextExecutionTime(TriggerContext triggerContext) {

          //任務觸發,可修改任務的執行周期.

          CronTrigger trigger = **new** CronTrigger( *cron* );

          Date nextExec = trigger.nextExecutionTime(triggerContext);

          **return **nextExec;

       }

   };

   taskRegistrar.addTriggerTask(task, trigger);

}

}

這里核心的主要是使用到了ScheduledTaskRegistrar這個類有一個方法addTriggerTask(Runnable,Trigger) 兩個參數,一個Runnable,一個是Trigger,在Runnable中執行業務邏輯代碼,在Trigger修改定時任務的執行周期。

啟動查看控制臺的打印信息如下:

TaskCronChange task is running ... Thu Apr 0605:38:20 CST 2017

TaskCronChangetask is running ... Thu Apr 06 05:38:25CST 2017

TaskCronChangetask is running ... Thu Apr 06 05:38:30CST 2017

cronchange to:0/10 * * * * *

TaskCronChangetask is running ... Thu Apr 06 05:38:35CST 2017

TaskCronChangetask is running ... Thu Apr 06 05:38:40CST 2017

TaskCronChangetask is running ... Thu Apr 06 05:38:50CST 2017

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • JAVA
    +關注

    關注

    19

    文章

    2974

    瀏覽量

    104984
  • 服務
    +關注

    關注

    0

    文章

    75

    瀏覽量

    18521
收藏 人收藏

    評論

    相關推薦

    cron和crontab命令

    本帖最后由 windworld 于 2016-2-24 14:08 編輯 cron機制cron可以讓系統在指定的時間,去執行某個指定的工作,我們可以使用crontab指令來管理cron機制
    發表于 02-24 13:33

    DM8168編碼器可以動態修改修改profile、level嗎?

    動態參數里面沒有,請問在理論上來說是可以修改的嗎? 是不是把對應的channal先disable然后在M3 video中修改profile,這樣可以嗎?
    發表于 05-25 05:12

    Z-Stack 1.2.2a 使用znp模式,能否通過host 動態修改poll rate

    Z-Stack 1.2.2a 使用znp模式,能否通過host 動態修改poll rate,如果可以 該如何進行修改
    發表于 06-01 01:14

    如何修改BLECC2540中advertData這個數組的動態

    1實現動態修改這個值0xc5 ];下面這個函數是特征值的調用返回,在這里該作何處理?static void simpleProfileChangeCB( uint8 paramID )[uint8
    發表于 10-21 09:24

    請問怎樣動態修改廣播包的內容?

    我使用CC2540,想動態修改廣播包中的數據,該怎么實現?藍牙BLE協議棧中有沒有支持動態修改廣播包內容?項目需求將一些數據放在廣播中,廣播給所有的listener,并且這些數據時會
    發表于 08-04 08:00

    怎樣去修改分區表參數文件

    怎樣去創建可以修改分區日期數據備份?怎樣去修改分區表參數文件?
    發表于 03-04 07:13

    怎樣使用STM32去支持并運行RTT動態模塊

    的驅動,因為最終編譯的動態模塊需要在文件系統中。進入到bsp目錄,使用env工具配置如下:為了支持動態模塊的運行,修改 bsp 對應的 rtconfig.py 中編譯動態模塊時需要用到
    發表于 06-08 10:58

    請問N32926能否調用動態?需要修改內核嗎?

    現在需要開發一個項目,中間需要用到第三方的動態庫,請問N32926能否調用動態,需要修改內核嗎?
    發表于 06-14 09:14

    Linux操作系統修改內核參數的三種方法詳細說明

    linux內核的參數設置怎么弄,Linux 操作系統修改內核參數有以下三種方式:
    發表于 10-06 18:03 ?1.1w次閱讀
    Linux操作系統<b class='flag-5'>修改</b>內核<b class='flag-5'>參數</b>的三種方法詳細說明

    如何在SpringBoot項目中實現動態定時任務

    之前寫過文章記錄怎么在SpringBoot項目中簡單使用定時任務,不過由于要借助cron表達式且都提前定義好放在配置文件里,不能在項目運行中動態修改任務執行時間,實在不太靈活。
    的頭像 發表于 09-30 11:16 ?1831次閱讀

    VH03型手持多功能讀數儀參數修改方法

    參數修改有三種實現方法,快捷鍵修改、參數修改模式和連接上位機指令修改
    的頭像 發表于 11-30 17:12 ?846次閱讀
    VH03型手持多功能讀數儀<b class='flag-5'>參數</b><b class='flag-5'>修改</b>方法

    教程 1-修改廣告參數

    教程 1 - 修改廣告參數
    發表于 03-15 19:39 ?0次下載
    教程 1-<b class='flag-5'>修改</b>廣告<b class='flag-5'>參數</b>

    如何動態添加修改刪除定時任務?

    如何動態添加修改刪除定時任務?那么我們一起看看具體怎么實現,先看下本節大綱: (1)思路說明; (2)代碼解析; (3)修改定時任務執行周期特別說明;
    的頭像 發表于 04-12 11:06 ?1107次閱讀

    教程 1-修改廣告參數

    教程 1 - 修改廣告參數
    發表于 07-06 18:49 ?0次下載
    教程 1-<b class='flag-5'>修改</b>廣告<b class='flag-5'>參數</b>

    請問Simulink如何在線動態修改模塊參數?

    典型的Simulink模塊雙擊時會彈出對話框,在對話框中可以設置模塊參數,如:雙擊正弦波模塊(SineWave),可以設置正弦波幅值和頻率;
    的頭像 發表于 07-20 17:23 ?6391次閱讀
    請問Simulink如何在線<b class='flag-5'>動態</b><b class='flag-5'>修改</b>模塊<b class='flag-5'>參數</b><b class='flag-5'>呢</b>?
    主站蜘蛛池模板: 麻豆国产自制在线观看 | 草比比过程图 | 国产免费久久爱久久啪 | 欧美肥胖女人bbwbbw视频 | 99re8热视频这在线视频 | 亚洲精品久久久WWW游戏好玩 | 黄色亚洲片 | 美女直播喷水 | 大相蕉伊人狼人久草av | av无码在线日本天堂 | 日本xxx在线观看免费播放 | 亚洲AV蜜桃永久无码精品无码网 | 久草免费视频在线观看 | 岛国大片在线观看免费版 | 亚洲国产精麻豆 | 哪灬你的鸣巴好大 | 天美传媒 免费观看 | 国产成人精品久久一区二区三区 | 精品AV亚洲乱码一区二区 | 国产国语在线播放视频 | 98久久人妻少妇激情啪啪 | 网友自拍偷拍 | 俄罗斯女人与马Z00Z视频 | 国产亚洲精品久久久999蜜臀 | 国产精品久久vr专区 | 新金梅瓶玉蒲团性奴3 | 91麻豆精品| 俄罗斯兽交XXXXX在线 | 啊好大好厉害好爽真骚 | 漂亮的保姆3集电影免费观看中文 | 芳草地在线观看免费观看 | 久久国产综合精品欧美 | 亚洲精品久久久WWW游戏好玩 | 国产精品毛片AV久久97 | 手机在线免费观看毛片 | 神马电影院午 夜理论 | 97视频免费在线观看 | 97精品国产高清在线看入口 | 亚洲AV无码乱码在线观看浪潮 | 亚洲国产成人精品青青草原100 | 高h np 强j 乱l 双性 |