spring boot(18) : 多线程执行定时任务
程序员文章站
2022-05-01 16:28:30
...
参考 : https://www.cnblogs.com/mmzs/p/10161936.html
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.LinkedBlockingDeque;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
/**
* @author jean.zj
* @date 2018-11-18
*/
@Component
@Configuration
@EnableScheduling
public class Task {
private ExecutorService executorService = new ThreadPoolExecutor(5, 10,
3000, TimeUnit.MILLISECONDS, new LinkedBlockingDeque<>(10), new ThreadFactoryBuilder()
.setNameFormat("Task-impl-%d").build());
/**
* 脱硫数据库连接心跳检测
* 3分钟之后开始,每3分钟运行一次
*/
@Scheduled(cron = "0 3/3 * * * ? ")
public void test() {
executorService.execute(() -> {
});
}
}
线程依赖 : https://blog.csdn.net/Lxinccode/article/details/83088189
在线Cron表达式生成器
推荐阅读
-
spring定时任务执行两次及tomcat部署缓慢问题的解决方法
-
spring定时任务(scheduler)的串行、并行执行实现解析
-
Spring Boot @Scheduled定时任务代码实例解析
-
spring boot使用自定义的线程池执行Async任务
-
SpringBoot系列:Spring Boot集成定时任务Quartz
-
Spring Boot+Quartz实现一个实时管理的定时任务
-
Spring Boot实现简单的定时任务
-
Spring Boot @Async 异步任务执行
-
使用spring-task定时任务动态配置修改执行时间
-
Spring Boot与Kotlin定时任务的示例(Scheduling Tasks)