springboot中使用Executors.newScheduledThreadPool()
时间: 2023-08-19 12:15:39 浏览: 92
在Spring Boot中,可以使用`Executors.newScheduledThreadPool()`方法创建一个定时任务执行线程池。
具体步骤如下:
1. 在需要使用定时任务的类中注入`ScheduledExecutorService`:
```
@Service
public class MyService {
@Autowired
private ScheduledExecutorService scheduledExecutorService;
// 省略其他代码
}
```
2. 编写定时任务方法,并使用`newScheduledThreadPool()`方法创建定时任务执行线程池:
```
@Service
public class MyService {
@Autowired
private ScheduledExecutorService scheduledExecutorService;
@PostConstruct
public void init() {
ScheduledExecutorService executor = Executors.newScheduledThreadPool(10);
executor.scheduleAtFixedRate(() -> {
// 定时任务方法
}, 0, 1, TimeUnit.MINUTES);
}
}
```
以上代码中,使用`newScheduledThreadPool(10)`方法创建一个大小为10的定时任务执行线程池,并使用`scheduleAtFixedRate()`方法实现每隔1分钟执行一次定时任务的效果。需要注意的是,`@PostConstruct`注解表示该方法在类初始化时会被执行一次。
希望以上内容能够帮助到你!
阅读全文