queue = new ArrayBlockingQueue(config.getQueueSize());
}
ThreadFactory factory = new DefaultThreadFactory(id,
config.isThreadDaemon(),
config.getThreadPriority());
RejectedExecutionHandler handler = new ThreadPoolExecutor.CallerRunsPolicy();
ThreadPoolExecutor service = new ThreadPoolExecutor(
config.getCorePoolSize(),
config.getMaximumPoolSize() < 0 ? Integer.MAX_VALUE : config.getMaximumPoolSize(),
config.getKeepAliveTime(),
TimeUnit.MILLISECONDS,