34 lines
856 B
Java
34 lines
856 B
Java
package org.gcube.data.spd.utils;
|
|
|
|
import java.util.concurrent.ExecutorService;
|
|
import java.util.concurrent.Executors;
|
|
|
|
public class ExecutorsContainer {
|
|
|
|
private static final int MAX_SEARCH_THREAD_POOL= 100;
|
|
|
|
private static final int MAX_JOB_POOL= 10;
|
|
|
|
private static ExecutorService searchThreadPool = Executors.newFixedThreadPool(MAX_SEARCH_THREAD_POOL);;
|
|
|
|
private static ExecutorService jobThreadPool = Executors.newFixedThreadPool(MAX_JOB_POOL);
|
|
|
|
|
|
public static void execSearch(Runnable runnable){
|
|
searchThreadPool.execute(runnable);
|
|
}
|
|
|
|
public static void execJob(Runnable runnable){
|
|
jobThreadPool.execute(runnable);
|
|
}
|
|
|
|
public static void stopAll(){
|
|
if (searchThreadPool!=null && jobThreadPool!=null){
|
|
searchThreadPool.shutdownNow();
|
|
jobThreadPool.shutdownNow();
|
|
searchThreadPool = null;
|
|
jobThreadPool = null;
|
|
}
|
|
}
|
|
}
|