package org.springblade.common.utils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Qualifier;
|
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
|
import org.springframework.stereotype.Component;
|
|
import java.util.concurrent.Callable;
|
import java.util.concurrent.Future;
|
|
@Component
|
public class ThreadPoolUtil {
|
|
// 指定Ben名称注入
|
@Qualifier("customThreadPool")
|
@Autowired
|
private ThreadPoolTaskExecutor executor;
|
|
// @Autowired
|
// public ThreadPoolUtil(ThreadPoolTaskExecutor executor) {
|
// this.executor = executor;
|
// }
|
|
/**
|
* 提交一个Runnable任务到线程池执行
|
* @param task 要执行的任务
|
*/
|
public void execute(Runnable task) {
|
executor.execute(task);
|
}
|
|
/**
|
* 提交一个Callable任务到线程池执行,并返回Future对象用于获取结果
|
* @param task 要执行的任务
|
* @return Future对象
|
*/
|
public <T> Future<T> submit(Callable<T> task) {
|
return executor.submit(task);
|
}
|
}
|