欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springboot schedule 解決定時(shí)任務(wù)不執(zhí)行的問題

 更新時(shí)間:2019年09月05日 14:53:28   作者:為湖  
這篇文章主要介紹了springboot schedule 解決定時(shí)任務(wù)不執(zhí)行的問題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

@schedule 注解 是springboot 常用的定時(shí)任務(wù)注解,使用起來簡(jiǎn)單方便,但是如果定時(shí)任務(wù)非常多,或者有的任務(wù)很耗時(shí),會(huì)影響到其他定時(shí)任務(wù)的執(zhí)行,因?yàn)閟chedule 默認(rèn)是單線程的,一個(gè)任務(wù)在執(zhí)行時(shí),其他任務(wù)是不能執(zhí)行的.解決辦法是重新配置schedule,改為多線程執(zhí)行.只需要增加下面的配置類就可以了.

import org.springframework.boot.autoconfigure.batch.BatchProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.scheduling.annotation.SchedulingConfigurer;
import org.springframework.scheduling.config.ScheduledTaskRegistrar;
import java.lang.reflect.Method;
import java.util.concurrent.Executors;
@Configuration
public class ScheduleConfig implements SchedulingConfigurer {
  @Override
  public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
    Method[] methods = BatchProperties.Job.class.getMethods();
    int defaultPoolSize = 3;
    int corePoolSize = 0;
    if (methods != null && methods.length > 0) {
      for (Method method : methods) {
        Scheduled annotation = method.getAnnotation(Scheduled.class);
        if (annotation != null) {
          corePoolSize++;
        }
      }
      if (defaultPoolSize > corePoolSize)
        corePoolSize = defaultPoolSize;
    }
    taskRegistrar.setScheduler(Executors.newScheduledThreadPool(corePoolSize));
  }
}

源碼  https://github.com/Yanyf765/demo_schedule

總結(jié)

以上所述是小編給大家介紹的springboot schedule 解決定時(shí)任務(wù)不執(zhí)行的問題,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!

相關(guān)文章

  • Java實(shí)現(xiàn)用戶不可重復(fù)登錄功能

    Java實(shí)現(xiàn)用戶不可重復(fù)登錄功能

    這篇文章主要介紹了Java實(shí)現(xiàn)用戶不可重復(fù)登錄功能,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下
    2016-12-12
  • java遍歷讀取xml文件內(nèi)容

    java遍歷讀取xml文件內(nèi)容

    這篇文章主要為大家介紹了java遍歷讀取xml文件內(nèi)容,感興趣的小伙伴們可以參考一下
    2016-01-01
  • 淺析JAVA 循環(huán)結(jié)構(gòu)

    淺析JAVA 循環(huán)結(jié)構(gòu)

    這篇文章主要介紹了JAVA 循環(huán)結(jié)構(gòu)的相關(guān)資料,文中講解的非常細(xì)致,示例代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • 大廠禁止SpringBoot在項(xiàng)目使用Tomcat容器原理解析

    大廠禁止SpringBoot在項(xiàng)目使用Tomcat容器原理解析

    這篇文章主要為大家介紹了大廠禁止SpringBoot在項(xiàng)目使用Tomcat原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • 全面了解OAuth?2.0四種授權(quán)方式金三銀四無懼面試

    全面了解OAuth?2.0四種授權(quán)方式金三銀四無懼面試

    這篇文章主要介紹了全面了解OAuth?2.0四種授權(quán)方式金三銀四無懼面試,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • java實(shí)現(xiàn)動(dòng)態(tài)數(shù)組

    java實(shí)現(xiàn)動(dòng)態(tài)數(shù)組

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)動(dòng)態(tài)數(shù)組,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • java 高并發(fā)中volatile的實(shí)現(xiàn)原理

    java 高并發(fā)中volatile的實(shí)現(xiàn)原理

    這篇文章主要介紹了java 高并發(fā)中volatile的實(shí)現(xiàn)原理的相關(guān)資料,在多線程并發(fā)編程中synchronized和Volatile都扮演著重要的角色,Volatile是輕量級(jí)的synchronized,它在多處理器開發(fā)中保證了共享變量的“可見性”,需要的朋友可以參考下
    2017-03-03
  • Spring Cache整合Redis實(shí)現(xiàn)方法詳解

    Spring Cache整合Redis實(shí)現(xiàn)方法詳解

    這篇文章主要介紹了Spring Cache整合Redis實(shí)現(xiàn)方法詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Java設(shè)計(jì)模式之策略模式詳解和示例

    Java設(shè)計(jì)模式之策略模式詳解和示例

    這篇文章主要介紹了Java設(shè)計(jì)模式之策略模式詳解和示例,策略模式就是一種行為可能會(huì)因?yàn)椴煌倪壿嬙斐啥鄠€(gè)算法,比如人吃飯,美國(guó)人吃飯用刀叉,中國(guó)吃飯用筷子,都是吃飯的行為但是使用的工具(算法)不一樣,需要的朋友可以參考下
    2024-01-01
  • MyBatis-Plus多表聯(lián)合查詢并且分頁(yè)(3表聯(lián)合)

    MyBatis-Plus多表聯(lián)合查詢并且分頁(yè)(3表聯(lián)合)

    這篇文章主要介紹了MyBatis-Plus多表聯(lián)合查詢并且分頁(yè)(3表聯(lián)合),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08

最新評(píng)論