in the pool maximumPoolSize, // The maximum number of threads to allow in the pool keepAliveTime, // the maximum time that excess idle threads will wait for new tasks timeUnit, // for the keepAliveTime argument workQueue, // the queue to use for holding tasks before they are executed threadFactory // The factory to use when the executor creates a new thread ); Task Result