public static Dispatcher asynchronousSafe(ErrorHandler errorHandler) { final ExecutorService executor = java.util.concurrent.Executors.newSingleThreadExecutor( new DefaultThreadFactory("AsynchronousSafe", "dispatcher", false)); return new DefaultDispatcher(errorHandler, executor, Executors.immediate()) { @Override public void close() { executor.shutdown(); } }; }
public static Dispatcher asynchronousUnsafe(int corePoolSize, ErrorHandler errorHandler) { final ExecutorService executor = java.util.concurrent.Executors.newFixedThreadPool( corePoolSize, new DefaultThreadFactory("AsynchronousUnsafe", "dispatcher", false)); return new DefaultDispatcher(errorHandler, executor, Executors.immediate()) { @Override public void close() { executor.shutdown(); } }; }
public static Dispatcher synchronousUnsafe(ErrorHandler errorHandler) { return new DefaultDispatcher(errorHandler, Executors.immediate(), Executors.immediate()); }