首页 > 其他分享 >spring 定时任务 使用线程池

spring 定时任务 使用线程池

时间:2024-07-01 15:44:38浏览次数:1  
标签:spring org springframework 线程 gridLoadJob executor import 定时

spring 线程池定义

package com.minex.icp.tool.conf;

import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.AsyncConfigurerSupport;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;

import java.util.concurrent.Executor;
import java.util.concurrent.ThreadPoolExecutor;

/**
 * <p>Description: 定时任务异步线程池配置 </p>
 *
 * @author dong4j
 * @version 1.0.0
 * @email "mailto:[email protected]"
 * @date 2023.07.28 10:43
 * @since 3.2.0
 */
@Slf4j
@Configuration
public class ScheduledThreadPoolConfig extends AsyncConfigurerSupport {
    /**
     * Scheduled executor
     *
     * @return the executor
     * @since 3.2.0
     */
    @Bean
    public Executor taskManagerExecutor() {
        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
        executor.setCorePoolSize(3);
        executor.setMaxPoolSize(5);
        executor.setQueueCapacity(10);
        executor.setThreadNamePrefix("taskManager-");
        executor.setKeepAliveSeconds(60);
        executor.setRejectedExecutionHandler(new ThreadPoolExecutor.AbortPolicy());
        return executor;
    }
}

 

使用方式: @Async 

/**
     * 电网负荷统计任务 (每 90 秒查询一次)
     *
     * @since 3.0.0
     */
    @Async("taskManagerExecutor")
    @Scheduled(cron = "30 0/1 * * * ?")
    public void gridLoadJob() {
        log.debug("gridLoadJob::begin");
        homePageService.gridLoadQuery("", "xf", false);
        homePageService.gridLoadQuery("", "zyxc", false);
        log.debug("gridLoadJob::end");
    }

 

标签:spring,org,springframework,线程,gridLoadJob,executor,import,定时
From: https://www.cnblogs.com/guanxiaohe/p/18278171

相关文章

  • springboot+vue前后端分离项目-vue项目搭建6-文件上传下载
    1.新增com/example/demo/controller/FileController.javapackagecom.example.demo.controller;importcn.hutool.core.io.FileUtil;importcn.hutool.core.util.IdUtil;importcn.hutool.core.util.StrUtil;importcom.example.demo.common.Result;importjakarta.ser......
  • Spring Boot 全局异常捕获机制详解
    在SpringBoot中,全局异常捕获机制是处理RESTHTTP请求时的一个重要功能,它可以确保所有未被捕获的异常都能被统一处理。本文将深入探讨SpringBoot中全局异常捕获的实现,从请求进入到异常处理的全过程。请求处理流程概述请求进入DispatcherServlet:所有HTTP请求首先到达......
  • springboot+vue+mybatis农业信息管理_种植员+PPT+论文+讲解+售后
    网络的广泛应用给生活带来了十分的便利。所以把农业信息管理与现在网络相结合,利用java技术建设农业信息管理系统,实现农业信息管理的信息化。则对于进一步提高农业信息管理发展,丰富农业信息管理经验能起到不少的促进作用。农业信息管理系统能够通过互联网得到广泛的、全面的宣......
  • springboot+vue+mybatis奶茶管理系统+PPT+论文+讲解+售后
    由于科学技术的快速发展,人们的生活也与信息时代的发展相关。同时,随着市场化和经济化的发展,国内很多行业已经意识到了这一点,为了提升行业的竞争力,就应当率先把握机会。于是在互联网的默化潜移影响下,餐饮业相关网站就是在这种情况下产生和发展起来的。奶茶在线订购系统是一个面......
  • springBoot集成Spring Cloud Alibaba Sentinel
    一、背景介绍:Sentinel·alibaba/spring-cloud-alibabaWiki·GitHub二、Sentinel介绍随着微服务的流行,服务和服务之间的稳定性变得越来越重要。 Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。Sentinel 具有以下特征:......
  • 1974Springboot医院远程诊断管理系统idea开发mysql数据库web结构java编程计算机网页源
    一、源码特点 springboot医院远程诊断管理系统是一套完善的信息系统,结合springboot框架和bootstrap完成本系统,对理解JSPjava编程开发语言有帮助系统采用springboot框架(MVC模式开发),系统具有完整的源代码和数据库,系统主要采用B/S模式开发。springboot医院远程诊断系统......
  • 基于Springboot的电子招投标系统。Javaee项目,springboot项目。
    演示视频:基于Springboot的电子招投标系统。Javaee项目,springboot项目。项目介绍:采用M(model)V(view)C(controller)三层体系结构,通过Spring+SpringBoot+Mybatis+Vue+Maven+Layui+Elementui来实现。MySQL数据库作为系统数据储存平台,实现了基于B/S结构的Web系统。界面简......
  • 基于Springboot的书籍学习平台(有报告)。Javaee项目,springboot项目。
    演示视频:基于Springboot的书籍学习平台(有报告)。Javaee项目,springboot项目。项目介绍:采用M(model)V(view)C(controller)三层体系结构,通过Spring+SpringBoot+Mybatis+Vue+Maven+Layui+Elementui来实现。MySQL数据库作为系统数据储存平台,实现了基于B/S结构的Web系统。界......
  • Spring Boot自动装配
    一、作用为了简化配置,使spring的使用更加方便,例如:可以回忆一下springboot中是如何继承redis的。spring配置方式的进化过程:xml的方式配置javaconfig的方式配置,使用@configuration注解在java中配置自动装配springbootstarter作用:引入模块所需的相关jar包自动配置各自模块......
  • springboot异常解决
    问题解决问题解释出现这个问题表示拦截器或控制器的某个请求处理方法返回了一个与请求路径相同的视图名称,导致视图解析器循环地尝试解析并渲染这个视图,从而引发循环视图路径的异常。问题分析原先的java代码如下@Controller@RequestMapping("/interceptor")publicclassInt......