public static ThreadPoolExecutor getThreadPoolExecutor() {
ThreadPoolExecutor executor;
int nbcpu = Runtime.getRuntime().availableProcessors();
executor = new ThreadPoolExecutor(nbcpu, 2 * nbcpu, 1,
TimeUnit.SECONDS, new LinkedBlockingQueue<Runnable>());
executor.prestartAllCoreThreads();
executor.allowCoreThreadTimeOut(true);
return executor;
}
/**