Common.java 628 B

12345678910111213141516171819202122232425
  1. package hello;
  2. import java.util.concurrent.ExecutorService;
  3. import java.util.concurrent.LinkedBlockingQueue;
  4. import java.util.concurrent.ThreadPoolExecutor;
  5. import java.util.concurrent.TimeUnit;
  6. /**
  7. * @author denkab
  8. */
  9. final class Common {
  10. private Common() {}
  11. private static final int cpuCount =
  12. Runtime.getRuntime().availableProcessors();
  13. static ExecutorService EXECUTOR =
  14. new ThreadPoolExecutor(
  15. cpuCount * 2,
  16. cpuCount * 25,
  17. 200,
  18. TimeUnit.MILLISECONDS,
  19. new LinkedBlockingQueue<>(cpuCount * 100),
  20. new ThreadPoolExecutor.CallerRunsPolicy());
  21. }