springboot开启多线程支持

2023-11-13

springboot开启多线程支持

springboot默认是可以支持多线程的,配置类上加上@EnableAsync注解,就可以在想多线程支持的方法上加上@Async该方法就可以自持多线程了

  • 配置类
    配置线程池
import org.springframework.aop.interceptor.AsyncUncaughtExceptionHandler;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.AsyncConfigurer;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;

import java.util.concurrent.Executor;


@Configuration
@EnableAsync//开启线程支持
public class ThreadAsyncConfigurer implements AsyncConfigurer {
   @Override
   public Executor getAsyncExecutor() {
       ThreadPoolTaskExecutor threadPool = new ThreadPoolTaskExecutor();
       //设置核心线程数
       threadPool.setCorePoolSize(10);
       //设置最大线程数
       threadPool.setMaxPoolSize(100);
       //线程池所使用的缓冲队列
       threadPool.setQueueCapacity(10);
       //等待任务在关机时完成--表明等待所有线程执行完
       threadPool.setWaitForTasksToCompleteOnShutdown(true);
       // 等待时间 (默认为0,此时立即停止),并没等待xx秒后强制停止
       threadPool.setAwaitTerminationSeconds(60);
       //  线程名称前缀
       threadPool.setThreadNamePrefix("DemoAsync-");
       // 初始化线程
       threadPool.initialize();
       return threadPool;

   }

   @Override
   public AsyncUncaughtExceptionHandler getAsyncUncaughtExceptionHandler() {
       return null;
   }
}
  • 具体使用
   @Async//该方法受spring线程管理
   public void delete(String tagcode) {
       System.out.println("删除数据线程开始:tagcode:"+tagcode);
       dao.deleteByTagId(tagcode);
       System.out.println("删除数据线程结束");

   }

结束

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

springboot开启多线程支持 的相关文章

  • 使用 Tabula 通过 Python 读取 pdf 时出现 Java 错误

    我已经安装了 tabula 库 用于使用 python 将 pdf 读取到 pandas 数据框中 但是当我运行代码时 import tabula df tabula read pdf sample1 pdf pages 1 我得到了例外
  • 与 Eclipse 中的 Java Content Assist 交互

    作为我的插件项目的一部分 我正在考虑与 Eclipse 在 Java 文件上显示的内容辅助列表进行交互 我正在尝试根据一些外部数据对列表进行重新排序 我看过一些有关创建新内容辅助的教程 但没有看到有关更改现有内容辅助的教程 这可能吗 如果是
  • Thymeleaf 3 Spring 5 映射加载字符串而不是 HTML

    我正在尝试将 Spring 5 和 Thymeleaf 3 一起配置 我正在 Eclipse 上工作 我使用 全新安装 构建并使用 springboot run 运行应用程序 我已经设置了一个控制器和几个模板 但 Thymeleaf 似乎找
  • 如何在 Java 中向时间戳添加/减去时区偏移量?

    我正在使用 JDK 8 并且玩过ZonedDateTime and Timestamp很多 但我仍然无法解决我面临的问题 假设我得到了格式化的Timestamp在格林威治标准时间 UTC 我的服务器位于某处 假设它设置为Asia Calcu
  • 如何在单个查询中搜索 RealmObject 的 RealmList 字段

    假设我有一堂课 public class Company extends RealmObject private String companyId private RealmList
  • 断言 Kafka 发送有效

    我正在使用 Spring Boot 编写一个应用程序 因此要写信给 Kafka 我这样做 Autowired private KafkaTemplate
  • Android 无法解析日期异常

    当尝试解析发送到我的 Android 客户端的日期字符串时 我得到一个无法解析的日期 这是例外 java text ParseException 无法解析的日期 2018 09 18T00 00 00Z 位于 偏移量 19 在 java t
  • 如何仅从 Firestore 获取最新更新的数据?

    在 Firestore 上发现任何更改时始终获取整个文档 如何只获取最近更新的数据 这是我的数据 我需要在第一次加载时在聊天中按对象顺序 例如 2018 09 17 30 40 msg和sendby 并且如果数据更新则仅获取新的msg和se
  • 从jar中获取资源

    我有包含文件的 jar myJar res endingRule txt myJar wordcalculator merger Marge class 在 Marge java 中我有代码 private static final Str
  • Java继承,扩展类如何影响实际类

    我正在查看 Sun 认证学习指南 其中有一段描述了最终修饰符 它说 如果程序员可以自由地扩展我们所知的 String 类文明 它可能会崩溃 他什么意思 如果可以扩展 String 类 我是否不会有一个名为 MyString 的类继承所有 S
  • 如何将 HTML 链接放入电子邮件正文中?

    我有一个可以发送邮件的应用程序 用 Java 实现 我想在邮件中放置一个 HTML 链接 但该链接显示为普通字母 而不是 HTML 链接 我怎样才能将 HTML 链接放入字符串中 我需要特殊字符吗 太感谢了 Update 大家好你们好 感谢
  • hibernate 6.0.2.Final 和 spring boot 2.7.0 的entityManagerFactory bean 未配置问题

    所以最近我想升级我的 Spring Boot 项目项目的一些依赖项 特别是这些组件 雅加达 EE 9 弹簧靴2 7 休眠 6 0 2 Final 完成此操作后 所有更新和代码折射 更新将 javax 导入到 jakarta 以及一些 hib
  • Java Swing - 如何禁用 JPanel?

    我有一些JComponents on a JPanel我想在按下 开始 按钮时禁用所有这些组件 目前 我通过以下方式显式禁用所有组件 component1 setEnabled false 但是有什么办法可以一次性禁用所有组件吗 我尝试禁用
  • Spring @Cacheable 和 @Async 注解

    我需要缓存一些异步计算的结果 具体来说 为了克服这个问题 我尝试使用 Spring 4 3 缓存和异步计算功能 作为示例 我们采用以下代码 Service class AsyncService Async Cacheable users C
  • 在 Spring 上下文中查找方法级自定义注释

    我想知道的是 所有的类 方法Spring http en wikipedia org wiki Spring Framework注释为 Versioned的bean 我创建了自定义注释 Target ElementType METHOD E
  • Hibernate 本机查询 - char(3) 列

    我在 Oracle 中有一个表 其中列 SC CUR CODE 是 CHAR 3 当我做 Query q2 em createNativeQuery select sc cur code sc amount from sector cost
  • partitioningBy 必须生成一个包含 true 和 false 条目的映射吗?

    The 分区依据 https docs oracle com javase 8 docs api java util stream Collectors html partitioningBy java util function Pred
  • Java RMI - 客户端超时

    我正在使用 Java RMI 构建分布式系统 它必须支持服务器丢失 如果我的客户端使用 RMI 连接到服务器 如果该服务器出现故障 例如电缆问题 我的客户端应该会收到异常 以便它可以连接到其他服务器 但是当服务器出现故障时 我的客户端什么也
  • 抛出 Java 异常时是否会生成堆栈跟踪?

    这是假设我们不调用 printstacktrace 方法 只是抛出和捕获 我们正在考虑这样做是为了解决一些性能瓶颈 不 堆栈跟踪是在构造异常对象时生成的 而不是在抛出异常对象时生成的 Throwable 构造函数调用 fillInStack
  • Java 11 - 将 Spring @PostConstruct 替换为 afterPropertiesSet 或使用 initMethod

    我正在使用 spring 应用程序 有时会使用 PostConstruct用于代码和测试中的设置 看来注释将被排除在外Java 11 https www baeldung com spring postconstruct predestro

随机推荐

  • 慕课第6周在线第2题 计算阶乘的和v2.0

    计算阶乘的和v2 0 4分 题目内容 假设有这样一个三位数m 其百位 十位和个位数字分别是a b c 如果m a b c 则这个三位数就称为三位阶乘和数 约定0 1 请编程计算并输出所有的三位阶乘和数 函数原型 long Fact int
  • 【参加CUDA线上训练营】共享内存实例1:矩阵转置实现及其优化①

    参加CUDA线上训练营 共享内存实例1 矩阵转置实现及其优化 1 完整代码 2 原理介绍 2 1 将各block 线程对应元素放入共享内存tile 2 2 实现转置 2 3 在此基础上修改 参考文献 本文参考Nvidia官方blog An
  • 唐伯虎诗集

    妒花 昨夜海棠初着雨 数点轻盈娇欲语 佳人晓起出兰房 折来对镜化红妆 问郎花好奴颜好 郎道不如花窈窕 佳人闻语发娇嗔 不信死花胜活人 将花揉碎掷郎前 请郎今日伴花眠 观鳌山 禁卫森严夜寂寥 灯山忽见翠召荛 六鳌并驾神仙府 双鹊连成帝子桥 星
  • 【H5】 图片拖入浏览器readAsDataURL与createObjectURL处理图片:

    H5 外部图片拖入浏览器 效果图如下 const file new FileReader 读到文件对象的信息 file readAsDataURL oFile 读取到文件所以的url 需要转入对象 方法一 实现代码如下
  • MongoDB下载安装与测试连接(windows)

    一 MongoDB下载 MongoDB为Windows提供了两种安装方式 分别是msi和zip方式 msi方式对4 0以上版本进行了优化 而3 x版本则需在安装后手动进行配置 zip方式解压即安装 但需要配置 故4 0以上版本推荐使用msi
  • 使用citavi快速搜索论文、下载论文

    第一步 点击在线搜索 第二步 一般需要添加下需要的数据库 这里我们添加常用的arxiv 第三步 输入需要搜索的论文名字 也可以通过作者来搜索 以及选择年份等等 第四步 添加搜索到的论文 最后 打开这个pdf 点击保存一个复制 这里也可以通过
  • 逆向某视频直播软件,破解收费观看

    https juejin im post 5cbd7bc06fb9a0324e4a376c
  • 深度操作系统Deepin V20正式版

    前言 深度科技在9月11日发布了 深度操作系统Deepin V20正式版 Deepin Desktop Community 名如其意 深度桌面系统社区版 对个人用户完全免费 没用上UOS企业版及个人版的完全可以安装Deepin V20尝尝鲜
  • vue-qr 二维码 批量 导出

    参考Vue批量生成二维码并打包下载 首先我们需要安装三个插件 jszip zip打包 file saver 文件保存 vue qr 二维码 完整代码如下 src components QRcode index vue
  • flex布局(项目-即子级)

    基本概念 采用Flex布局的元素 称为Flex容器 flex container 简称 容器 它的所有子元素自动成为容器成员 称为Flex项目 flex item 简称 项目 项目的属性 以下6个属性设置在项目上 order flex gr
  • DataOutputStream 类 和DatainputStream类 的主要方法简单介绍,及代码演示。

    DataOutputStream数据输出流 将java基本数据类型写入数据输出流中 并可以通过数据输入流DataInputStream将数据读入 DataOutputStream类 构造函数 DataOutputStream OutputS
  • Qt在QTableWidget、View等表格中添加右击菜单

    先来看效果图 鼠标点在哪里菜单显示在哪里 实现代码 在构造函数中设置右击菜单 并关联右击的槽函数 ui tableWidget gt setContextMenuPolicy Qt CustomContextMenu 设置右击菜单 conn
  • cov() missing 1 required positional argument: ‘other‘报错

    原代码 prets np dot weights log returns mean 252 计算年化风险 diag是获取对角线的数据 pvols np diag np sqrt np dot weights np dot log retur
  • 定制android ROM禁止SIM卡状态改变系统弹出提示框

    按上一篇文章 搭建可修改android 系统的环境 http blog csdn net karts article details 64124098 SIM卡状态改变系统弹出提示框 是在 Keyguard 这个apk里面进行的 1 cop
  • go语言基础-----19-----Context使用原则、接口、派生上下文(select的多路复用可以参考这里理解更好)

    1 Go语言Context介绍 为什么需要 Context 每一个处理都应该有个超时限制 需要在调用中传递这个超时 比如开始处理请求的时候我们说是 3 秒钟超时 那么在函数调用中间 这个超时还剩多少时间了 需要在什么地方存储这个信息 这样请
  • 安全意识培训:如何提高员工网络安全意识?

    随着网络技术的不断发展和应用 网络安全已经成为企业必须关注和重视的问题 尤其是在今天 企业数字化转型的大背景下 网络安全问题日益凸显 对于企业而言 员工是企业安全的第一道防线 提高员工的网络安全意识已经成为企业安全管理的关键所在 本文将从以
  • 【实践篇】推荐算法PaaS化探索与实践

    作者 京东零售 崔宁 1 背景说明 目前 推荐算法部支持了主站 企业业务 全渠道等20 业务线的900 推荐场景 通过梳理大促运营 各垂直业务线推荐场景的共性需求 对现有推荐算法能力进行沉淀和积累 并通过算法PaaS化打造通用化的推荐能力
  • Flutter图片放大(双击缩放、双指滑动缩放、拖拽)

    import dart ui import package flutter material dart import package flutter services dart import package flutter screenut
  • uniapp+vue3+ts 使用pinia报错

    hasInjectionContext is not exported by node modules vue demi lib index mjs imported by node modules pinia dist pinia mjs
  • springboot开启多线程支持

    springboot开启多线程支持 springboot默认是可以支持多线程的 配置类上加上 EnableAsync注解 就可以在想多线程支持的方法上加上 Async该方法就可以自持多线程了 配置类 配置线程池 import org spr