internal ExecutorDispatcher(int availableThreads, float numberOfDispatchersFactor) { var maxAllowedConcurrentThreads = (int)(availableThreads * numberOfDispatchersFactor); closed = new AtomicBoolean(false); executor = new ThreadPoolExecutor(maxAllowedConcurrentThreads, HandleRejection); }