十五、springboot集成定时任务(Scheduling Tasks)(二)之(线程配置)
2024-08-31 04:02:44
配置类:
/**
* 定时任务线程配置
*
*/
@Configuration
public class SchedulerConfig implements SchedulingConfigurer { @Override
public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
// 设置定时任务并发数目
taskRegistrar.setScheduler(Executors.newScheduledThreadPool(100));
} }
定时任务执行方式:
单线程(串行)
多线程(并行)
并行任务和异步任务的配置:
SchedulingConfigurer: 将线程池注入TaskScheduler,并与ScheduledTaskRegistrar 关联;
AsyncConfigurer:用于异步处理
@Configuration
@EnableScheduling
public class ScheduleConfig implements SchedulingConfigurer, AsyncConfigurer
{ /*
* 并行任务
*/
public void configureTasks(ScheduledTaskRegistrar taskRegistrar)
{
TaskScheduler taskScheduler = taskScheduler();
taskRegistrar.setTaskScheduler(taskScheduler);
} /**
* 并行任务使用策略:多线程处理(配置线程数等)
*
* @return ThreadPoolTaskScheduler 线程池
*/
@Bean(destroyMethod = "shutdown")
public ThreadPoolTaskScheduler taskScheduler()
{
ThreadPoolTaskScheduler scheduler = new ThreadPoolTaskScheduler();
scheduler.setPoolSize(20);
scheduler.setThreadNamePrefix("task-"); //设置线程名开头
scheduler.setAwaitTerminationSeconds(60);
scheduler.setWaitForTasksToCompleteOnShutdown(true);
return scheduler;
} /*
* 异步任务
*/
public Executor getAsyncExecutor()
{
Executor executor = taskScheduler();
return executor;
} /*
* 异步任务 异常处理
*/
public AsyncUncaughtExceptionHandler getAsyncUncaughtExceptionHandler()
{
return new SimpleAsyncUncaughtExceptionHandler();
}
}
最新文章
- Spring 01基础
- 可视化工具gephi源码探秘(一)
- 如何制作u盘启动盘
- POJ 1451 T9
- 新浪微博客户端(20)-集成MJRefresh
- echo ";不允许上传该类型的文件
- js默认比较第一个数字大小
- C语言:文件操作
- 初试集群虚拟化搭建(二)—— Xen, kvm, OpenStack, VMware ESXi, Citrix XenServer等种种选择
- Mysql + keepalived 实现双主热备读写分离【转】
- IOS 手机端搜索硬件设备 --- 物联网
- LED服务总结
- Dynamics 365 Online-Security Updates On TLS 1.2
- Windows Server 2012 配置远程桌面帐户允许多用户同时登录
- yii2记录
- vue router.push(),router.replace(),router.go()和router.replace后需要返回两次的问题
- SSM(Spring+SpringMvc+Mybatis)整合笔记
- linux系统被ddos攻击识别
- asp.net导出excel-一行代码实现excel、xml、pdf、word、html、csv等7种格式文件导出功能而且美观-SNF快速开发平台
- .net core 2.0学习记录(三):内置IOC与DI的使用
热门文章
- Android Paging库使用详解
- 单点登录(十七)----cas4.2.x登录mongodb验证方式成功后返回更多信息更多属性到客户端
- Java类编译、加载、和执行机制
- 【纪中集训2019.3.12】Mas的仙人掌
- CSS3 grayscale滤镜+SVG使图片变黑白实例页面
- 经典面试题目C语言
- 火狐,discuz同步登录问题解决
- GO_05_2:Golang 中 panic、recover、defer 的用法
- Java基础-Date类常用方法介绍
- 安装MySQL5.7由于 Redistributable导致失败