private static Executor getDefaultThreadPoolExecutor() { if (defaultThreadPoolExecutor == null) { Executor executor = getAsyncTaskThreadPool(); if (executor == null) { final AtomicInteger threadCounter = new AtomicInteger(); //noinspection NullableProblems ThreadFactory tFactory = new ThreadFactory() { @Override public Thread newThread(final Runnable r) { return new Thread(r, "Goro Thread #" + threadCounter.incrementAndGet()); } }; final LinkedBlockingQueue<Runnable> queue = new LinkedBlockingQueue<>(MAX_QUEUE_LENGTH); executor = new ThreadPoolExecutor(CORE_POOL_SIZE, MAXIMUM_POOL_SIZE, KEEP_ALIVE, TimeUnit.SECONDS, queue, tFactory); } defaultThreadPoolExecutor = executor; } return defaultThreadPoolExecutor; }
private static Executor getDefaultThreadPoolExecutor() { if (defaultThreadPoolExecutor == null) { Executor executor = getAsyncTaskThreadPool(); if (executor == null) { final AtomicInteger threadCounter = new AtomicInteger(); //noinspection NullableProblems ThreadFactory tFactory = new ThreadFactory() { @Override public Thread newThread(final Runnable r) { return new Thread(r, "Goro Thread #" + threadCounter.incrementAndGet()); } }; final LinkedBlockingQueue<Runnable> queue = new LinkedBlockingQueue<>(MAX_QUEUE_LENGTH); executor = new ThreadPoolExecutor(CORE_POOL_SIZE, MAXIMUM_POOL_SIZE, KEEP_ALIVE, TimeUnit.SECONDS, queue, tFactory); } defaultThreadPoolExecutor = executor; } return defaultThreadPoolExecutor; }