若依项目 | 线程池配置

概括: ruoyi项目中的线程池配置以@bean的方式自定义ThreadPoolTaskExecutor对象、ScheduledExecutorService对象放入Spring容器中

package com.ruoyi.framework.config;import com.ruoyi.common.utils.Threads;
import org.apache.commons.lang3.concurrent.BasicThreadFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledThreadPoolExecutor;
import java.util.concurrent.ThreadPoolExecutor;/*** 线程池配置** @author ruoyi**/
@Configuration
public class ThreadPoolConfig
{// 核心线程池大小private int corePoolSize = 50;// 最大可创建的线程数private int maxPoolSize = 200;// 队列最大长度private int queueCapacity = 1000;// 线程池维护线程所允许的空闲时间private int keepAliveSeconds = 300;@Bean(name = "threadPoolTaskExecutor")public ThreadPoolTaskExecutor threadPoolTaskExecutor(){ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();executor.setMaxPoolSize(maxPoolSize);executor.setCorePoolSize(corePoolSize);executor.setQueueCapacity(queueCapacity);executor.setKeepAliveSeconds(keepAliveSeconds);// 线程池对拒绝任务(无线程可用)的处理策略executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());return executor;}/*** 执行周期性或定时任务*/@Bean(name = "scheduledExecutorService")protected ScheduledExecutorService scheduledExecutorService(){return new ScheduledThreadPoolExecutor(corePoolSize,new BasicThreadFactory.Builder().namingPattern("schedule-pool-%d").daemon(true).build(),new ThreadPoolExecutor.CallerRunsPolicy()){@Overrideprotected void afterExecute(Runnable r, Throwable t){super.afterExecute(r, t);Threads.printException(r, t);}};}
}

若依专题 线程池配置相关推荐

  1. 什么?用@Async会内存溢出?看看你的线程池配置了没!

    上一篇我们介绍了如何使用@Async注解来创建异步任务,我可以用这种方法来实现一些并发操作,以加速任务的执行效率.但是,如果只是如前文那样直接简单的创建来使用,可能还是会碰到一些问题.存在有什么问题呢 ...

  2. Java多线程之线程池配置合理线程数

    Java多线程之线程池配置合理线程数 目录 代码查看公司服务器或阿里云是几核的 合理线程数配置之CPU密集型 合理线程数配置之IO密集型 1. 代码查看公司服务器或阿里云是几核的 要合理配置线程数首先 ...

  3. Springboot应用中线程池配置教程(2021版)

    前言:日常开发中我们常用ThreadPoolExecutor提供的线程池服务帮我们管理线程,在Springboot中更是提供了@Async注解来简化业务逻辑提交到线程池中执行的过程.由于Springb ...

  4. spring定时任务Scheduled与定时任务线程池配置SchedulingConfigurer ,Java

    spring定时任务Scheduled与定时任务线程池配置SchedulingConfigurer ,Java spring默认定时任务的使用 package zhangphil.demo;impor ...

  5. 解决URL存在特殊符号、异步线程池配置、动态加载lib下所有jar包

    一.解决URL存在特殊符号|{}?&.URL中包含%2F.URL中包含%5C import lombok.extern.slf4j.Slf4j; import org.springframew ...

  6. ThreadPoolTaskExecutor多线程使用,及线程池配置

    1.配置 ThreadPoolTaskExecutor bean <?xml version="1.0" encoding="UTF-8"?> &l ...

  7. UE4异步编程专题 - 线程池FQueuedThreadPool

    1. FQueuedThreadPool & IQueuedWork FQueuedThreadPool是UE4中抽象出的线程池.线程池由若干个Worker线程,和一个同步队列构成.UE4把同 ...

  8. Weblogic(4)—— Linux环境Weblogic12c配置节点管理(nodemanage.properties)来开启应用服务器(server)及线程池配置...

    Linux环境搭建weblogic12c服务器,用来进行weblogic服务器项目部署,刚创建weblogic服务器会默认存在AdminServer管理服务器.但是项目应用一般是不能挂在这个服务器上的 ...

  9. springboot线程池配置

    1. application.yml配置 # 异步线程配置 # 配置核心线程数 async.executor.thread.core_pool_size: 10 # 配置最大线程数 async.exe ...

最新文章

  1. 深度之眼课程打卡-统计学习方法01
  2. POJ 2823-Sliding Window单调队列解题报告
  3. swift5主线程延迟操作的几种写法
  4. matlab实验8数据分析与多项式计算,hashidamatlab实验八数据处理与多项式计算.doc
  5. ant-design 本地web版本下载_bilibili 哔哩哔哩视频如何下载到电脑的 3 种方法
  6. vSphere 6.7的新增功能?我应该升级吗?
  7. 民航重组:做大容易做强难
  8. Silverlight 4+RIA Services–搜索引擎优化(SEO)
  9. !heap 和 _HEAP_ENTRY
  10. mac m1 eclipse汉化操作
  11. 机器学习处理信号分离_机器学习和深度学习现如今能应用在雷达信号处理,或者信号处理的哪些方面?...
  12. 中国人民大学赵鑫:AI 科研入坑指南
  13. Android开发技巧——实现底部图标文字的导航栏(已更新)
  14. 【游戏客户端】制作节奏大师Like音游(全)
  15. 单调、加班、血汗工厂,被夸大的富士康背后真相到底是什么?
  16. 关于线程池中Worker对象的理解
  17. 微信小程序小说阅读器/在线故事阅读丨可以android studio运行
  18. MySQL添加约束条件
  19. LPDDR5 JEDEC
  20. 失无所失的伤感空间日志分享:我会一直这样爱着你,心甘情愿

热门文章

  1. 小白成长记(三、SqlSugar的sum用法)
  2. 【机器学习基础】三层神经网络
  3. 【供应链】全面分析供应链类型
  4. js对call 和apply的理解
  5. java map集合详解_JAVA干货:Map 集合详解
  6. Php 网站性能优化,关于ThinkPHP中网站性能优化研究
  7. 一个纯技术程序员的求职心酸历程
  8. upx壳的一些简单脱壳,望大牛勿喷。
  9. 使用matplotlib绘制高级图表8
  10. python3 zlib 实现压缩与解压字符串与文件数据流