zoukankan      html  css  js  c++  java
  • springBoot 定时器

    程序入口类中加入注解

    @EnableScheduling

    配置定时任务为并行

    @Slf4j
    @Configuration
    public class ScheduledConfig implements SchedulingConfigurer {
    
        @Override
        public void configureTasks(ScheduledTaskRegistrar scheduledTaskRegistrar) {
            scheduledTaskRegistrar.setScheduler(Executors.newScheduledThreadPool(10));
        }
    }//end

    编写定时器类

    @Component
    @Slf4j
    public class timerController {
        private int fixedDelayCount = 1;
        private int fixedDelayCount1 = 1;
    
        @Scheduled(fixedDelay = 5000)        
        public void testFixDelay() throws InterruptedException {
            Thread.sleep(5000);
            log.info("===fixedDelay: 第{}次执行方法", fixedDelayCount++);
        }
        @Scheduled(fixedDelay = 3000)        
        public void testFixDelay1() {
            try {
                Thread.sleep(3000);
                log.info("===fixedDelay1: 第{}次执行方法", fixedDelayCount1++);
                if (fixedDelayCount1 == 3) {
                    int i = 1 / 0;
                }
            } catch (Exception e) {
                log.error(e.toString());
            }
        }
    }

    如果定时器遇到异常,并不会使定时器断掉,抛出异常后会重新运行。

    欢迎指正:haizi2014@qq.com
  • 相关阅读:
    开始写游戏 --- 第三十一篇
    开始写游戏 --- 第三十篇
    开始写游戏 --- 第二十九篇
    开始写游戏 --- 第二十八篇
    高并发性能调试经验分享
    eclipse调试jdk源码
    synzhronized原理3
    内存屏障
    《JAVA NIO》读书笔记
    并发工具类
  • 原文地址:https://www.cnblogs.com/hcfan/p/9843471.html
Copyright © 2011-2022 走看看