Refine search
/** * Creates a new {@link ExecutorService} */ protected ExecutorService newThreadPool(int threadCount) { if (threadCount == 0){ return null; } final ThreadPoolConfig tpc = ThreadPoolConfig.defaultConfig() .setPoolName("RCM_" + threadCount) .setCorePoolSize(1) .setMaxPoolSize(threadCount); return GrizzlyExecutorService.createInstance(tpc); }
/** * * @param cfg {@link ThreadPoolConfig} * @return {@link GrizzlyExecutorService} */ public static GrizzlyExecutorService createInstance(ThreadPoolConfig cfg) { return new GrizzlyExecutorService(cfg); }
protected GrizzlyExecutorService(ThreadPoolConfig config) { setImpl(config); }
kernelPoolConfig = ThreadPoolConfig.defaultConfig() .setCorePoolSize(selectorRunnersCnt) .setMaxPoolSize(selectorRunnersCnt) .setPoolName("grizzly-nio-kernel"); } else if (kernelPoolConfig.getMaxPoolSize() < selectorRunnersCnt) { kernelPoolConfig.setMemoryManager(memoryManager); setKernelPool0( GrizzlyExecutorService.createInstance( kernelPoolConfig)); workerPoolConfig.setMemoryManager(memoryManager); setWorkerThreadPool0(GrizzlyExecutorService.createInstance( workerPoolConfig));
.setTransactionTimeout(-1, TimeUnit.MILLISECONDS); GrizzlyExecutorService r = GrizzlyExecutorService.createInstance(cfg); final int tasks = 2000000; doTest(r,tasks); final ThreadPoolConfig config1 = r.getConfiguration(); assertTrue(config1.getMaxPoolSize() == threads); assertTrue(config1.getQueueLimit() == cfg.getQueueLimit()); assertTrue(config1.getQueue().getClass().getSimpleName().contains("LinkedTransferQueue")); doTest(r.reconfigure(r.getConfiguration().setQueueLimit(tasks)),tasks); final ThreadPoolConfig config2 = r.getConfiguration(); assertTrue(config2.getQueueLimit() == tasks); int coresize = r.getConfiguration().getMaxPoolSize()+1; doTest( r.reconfigure(r.getConfiguration(). setQueue(new LinkedList<Runnable>()). setCorePoolSize(coresize). setKeepAliveTime(1, TimeUnit.MILLISECONDS). setMaxPoolSize(threads+=50)),tasks); final ThreadPoolConfig config3 = r.getConfiguration(); assertTrue(config3.getQueue().getClass().getSimpleName().contains("LinkedList")); assertTrue(config3.getCorePoolSize() == coresize); assertTrue(config3.getMaxPoolSize() == threads); r.shutdownNow();
.setTransactionTimeout(-1, TimeUnit.MILLISECONDS); GrizzlyExecutorService r = GrizzlyExecutorService.createInstance(cfg); final int tasks = 2000; runTasks(r,tasks); r.shutdown(); assertTrue(r.awaitTermination(10, TimeUnit.SECONDS)); assertTrue(r.isTerminated()); r = GrizzlyExecutorService.createInstance(cfg.setQueueLimit(tasks)); runTasks(r,tasks); r.shutdown(); assertTrue(r.awaitTermination(10, TimeUnit.SECONDS)); assertTrue(r.isTerminated()); int coresize = cfg.getMaxPoolSize()+1; r = GrizzlyExecutorService.createInstance(cfg.setQueueLimit(tasks) .setQueue(new LinkedList<Runnable>()) .setCorePoolSize(coresize) doTest(r,tasks); runTasks(r,tasks); r.shutdown(); assertTrue(r.awaitTermination(10, TimeUnit.SECONDS)); assertTrue(r.isTerminated());
public static void main(String[] args) { ThreadPoolConfig.defaultConfig().copy() .setPoolName("low-priority-thread-pool") .setCorePoolSize(2) .setMaxPoolSize(16) GrizzlyExecutorService.createInstance(lowPriorityThreadPoolConfig); GrizzlyExecutorService.createInstance(highPriorityThreadPoolConfig);
public void testTransactionTimeout() throws Exception { final ExecutorService threadPool = Executors.newSingleThreadExecutor(); try { final DelayedExecutor delayedExecutor = new DelayedExecutor(threadPool); final int tasksNum = 10; final long transactionTimeoutMillis = 5000; final CountDownLatch cdl = new CountDownLatch(tasksNum); final ThreadPoolConfig tpc = ThreadPoolConfig.defaultConfig().copy() .setTransactionTimeout(delayedExecutor, transactionTimeoutMillis, TimeUnit.MILLISECONDS) .setCorePoolSize(tasksNum / 2).setMaxPoolSize(tasksNum / 2); final GrizzlyExecutorService ges = GrizzlyExecutorService.createInstance(tpc); for (int i = 0; i < tasksNum; i++) { ges.execute(new Runnable() { @Override public void run() { try { Thread.sleep(transactionTimeoutMillis); } catch (InterruptedException e) { cdl.countDown(); } } }); } cdl.await(transactionTimeoutMillis * 3 / 2, TimeUnit.MILLISECONDS); } finally { threadPool.shutdownNow(); } }
= GrizzlyExecutorService.createInstance( ThreadPoolConfig.defaultConfig() .copy() .setCorePoolSize(5) .setMaxPoolSize(5));
/** * * @return {@link GrizzlyExecutorService} */ public static GrizzlyExecutorService createInstance() { return createInstance(ThreadPoolConfig.defaultConfig()); }
/** * Sets the {@link ThreadPoolConfig} * @param config * @return returns {@link GrizzlyExecutorService} */ public GrizzlyExecutorService reconfigure(ThreadPoolConfig config) { synchronized (statelock) { //TODO: only create new pool if old one cant be runtime config // for the needed state change(s). final AbstractThreadPool oldpool = this.pool; if (config.getQueue() == oldpool.getQueue()) { config.setQueue(null); } setImpl(config); AbstractThreadPool.drain(oldpool.getQueue(), this.pool.getQueue()); oldpool.shutdown(); } return this; }
private void testInWorkerThread(final MemoryManager mm, final Runnable task) throws Exception { final FutureImpl<Boolean> future = SafeFutureImpl.create(); ThreadPoolConfig config = ThreadPoolConfig.defaultConfig(); config.setMemoryManager(mm); ExecutorService threadPool = GrizzlyExecutorService.createInstance(config); threadPool.execute(new Runnable() { @Override public void run() { try { task.run(); future.result(Boolean.TRUE); } catch (Throwable e) { future.failure(e); } } }); assertTrue(future.get(10, TimeUnit.SECONDS)); }
/** * Constructs Http2HandlerFilter. */ public Http2BaseFilter(final Http2Configuration configuration) { this.configuration = configuration; final ThreadPoolConfig tpConfig = configuration.getThreadPoolConfig(); threadPool = ((tpConfig != null) ? GrizzlyExecutorService.createInstance(tpConfig) : configuration.getExecutorService()); }
kernelPoolConfig = ThreadPoolConfig.defaultConfig() .setCorePoolSize(selectorRunnersCnt) .setMaxPoolSize(selectorRunnersCnt) .setPoolName("grizzly-nio-kernel"); } else if (kernelPoolConfig.getMaxPoolSize() < selectorRunnersCnt) { kernelPoolConfig.setMemoryManager(memoryManager); setKernelPool0( GrizzlyExecutorService.createInstance( kernelPoolConfig)); workerPoolConfig.setMemoryManager(memoryManager); setWorkerThreadPool0(GrizzlyExecutorService.createInstance( workerPoolConfig));
/** * * @return {@link GrizzlyExecutorService} */ public static GrizzlyExecutorService createInstance() { return createInstance(ThreadPoolConfig.defaultConfig()); }
/** * Sets the {@link ThreadPoolConfig} * @param config * @return returns {@link GrizzlyExecutorService} */ public GrizzlyExecutorService reconfigure(ThreadPoolConfig config) { synchronized (statelock) { //TODO: only create new pool if old one cant be runtime config // for the needed state change(s). final AbstractThreadPool oldpool = this.pool; if (config.getQueue() == oldpool.getQueue()) { config.setQueue(null); } setImpl(config); AbstractThreadPool.drain(oldpool.getQueue(), this.pool.getQueue()); oldpool.shutdown(); } return this; }
/** * Constructs Http2HandlerFilter. */ public Http2BaseFilter(final Http2Configuration configuration) { this.configuration = configuration; final ThreadPoolConfig tpConfig = configuration.getThreadPoolConfig(); threadPool = ((tpConfig != null) ? GrizzlyExecutorService.createInstance(tpConfig) : configuration.getExecutorService()); }
kernelPoolConfig = ThreadPoolConfig.defaultConfig() .setCorePoolSize(selectorRunnersCnt) .setMaxPoolSize(selectorRunnersCnt) .setPoolName("grizzly-nio-kernel"); } else if (kernelPoolConfig.getMaxPoolSize() < selectorRunnersCnt) { kernelPoolConfig.setMemoryManager(memoryManager); setKernelPool0( GrizzlyExecutorService.createInstance( kernelPoolConfig)); workerPoolConfig.setMemoryManager(memoryManager); setWorkerThreadPool0(GrizzlyExecutorService.createInstance( workerPoolConfig));
final ThreadPoolConfig tpc = ThreadPoolConfig.defaultConfig() .setPoolName("connection-pool-delays-thread-pool") .setCorePoolSize(1) .setMaxPoolSize(1); GrizzlyExecutorService.createInstance(tpc); ownDelayedExecutor = new DelayedExecutor( ownDelayedExecutorThreadPool);
/** * * @return {@link GrizzlyExecutorService} */ public static GrizzlyExecutorService createInstance() { return createInstance(ThreadPoolConfig.defaultConfig()); }