TaskManager.java 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /**
  2. * Copyright
  3. * All right reserved.
  4. * 项目名称:运维系统
  5. * 创建日期:2022/5/23
  6. */
  7. package org.springblade.jobtask;
  8. import lombok.extern.slf4j.Slf4j;
  9. import org.glassfish.jersey.internal.guava.ThreadFactoryBuilder;
  10. import org.springframework.scheduling.annotation.EnableScheduling;
  11. import org.springframework.stereotype.Component;
  12. import java.util.concurrent.*;
  13. /***
  14. * Date:2022/5/22
  15. * Title: 任务执行线程池
  16. * Description:任务执行线程池
  17. * @author swp
  18. * @version 1.0
  19. * Remark:认为有必要的其他信息
  20. */
  21. @Slf4j
  22. @Component
  23. @EnableScheduling
  24. public class TaskManager {
  25. /**
  26. * 公共线程池
  27. **/
  28. private static ThreadFactory publicThreadFactory = new ThreadFactoryBuilder().setNameFormat("task-thread-pool-%d").build();
  29. private static ExecutorService publicThreadPool = new ThreadPoolExecutor(2, 4,
  30. 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>(1024), publicThreadFactory, new ThreadPoolExecutor.AbortPolicy());
  31. public void submitTask(FutureTask<Integer> futureTask) {
  32. publicThreadPool.execute(futureTask);
  33. }
  34. }