不必每次都重新写一遍线程池初始化的代码,只需要@Autowired ExecutorService 即可。
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component;
import java.util.concurrent.*;
/**
* @Desc 先把Bean注入,不然 @Autowired private ExecutorService executorService; 会报错,
**/
@Configuration //@Configuration 与 @Component 均可
//@Component
public class ThreadPoolConfig {
@Bean
public ExecutorService getThreadPool() {
System.out.println("ExecutorService getThreadPool()...");
return new ThreadPoolExecutor(2, 5, 10, TimeUnit.SECONDS,
new LinkedBlockingDeque<>());
}
}
impo