//四个线程同时去执行 ForkJoinPool myPool = new ForkJoinPool(4); myPool.submit(() -> {})
打开的线程数
public class ThreadPoolHelper { public static ThreadPool instance; private ThreadPoolExecutor longExecutor; // 耗时比较长的线程池 用来请求网络 private ThreadPoolExecutor shortExecutor; // 比较短的线程池 用来加载本地数据 // 获取单例的线程池对象 public static ThreadPool getInstance() { if (instance == null) { synchronized (ThreadPoolHelper.class) { if (instance == null) { int cpuNum = Runtime.getRuntime().availableProcessors();// 获取处理器数量 int threadNum = cpuNum * 2 + 1;// 根据cpu数量,计算出合理的线程并发数 instance = new ThreadPool(threadNum-1, threadNum, Integer.MAX_VALUE);//默认是双核的cpu 每个核心走一个线程 一个等待线程 } } } return instance; } public static class ThreadPool { private ThreadPoolExecutor mExecutor; private in