阿里云搭建多个网站,安丘市建设局官方网站,优质网站建设报价,做投标需要知道什么网站线程池几个核心参数 corePoolSize#xff1a;核心线程数量大小。maximumPoolSize#xff1a;线程池最大容纳线程数。keepAliveTime#xff1a;线程空闲后的存活时长。TimeUnit#xff1a;单位时间。BlockingQueue#xff1a;缓存异步任务的队列。 ThreadFactory #xff…线程池几个核心参数 corePoolSize核心线程数量大小。maximumPoolSize线程池最大容纳线程数。keepAliveTime线程空闲后的存活时长。TimeUnit单位时间。BlockingQueue缓存异步任务的队列。 ThreadFactory 用来构造线程池里的worker线程。RejectedExecutionHandler线程池任务满载后采取的任务拒绝策略。
核心参数说明
1、当线程池中线程数量小于 corePoolSize 则创建线程并处理请求。
2、当线程池中线程数量大于等于corePoolSize时则把请求放入workQueue中,随着线程池中的核心线程们不断执行任务只要线程池中有空闲的核心线程线程池就从 workQueue中取任务并处理。
3 、当workQueue已存满放不下新任务时则新建非核心线程入池并处理请求直到线程数目达到maximumPoolSize最大线程数量设置值。
4、如果线程池中线程数大于maximumPoolSize则使RejectedExecutionHandler来进行任务拒绝处理。
线程池大小分配线程池究竟设置多大要看你的线程池执行的什么任务了CPU密集型、IO密集型、混合型任务类型不同设置的方式也不一样。 任务一般分为CPU密集型、IO密集型、混合型对于不同类型的任务需要分配不同大小的线程池。
1、CPU密集型 尽量使用较小的线程池一般Cpu核心数1。 2、IO密集型 方法一可以使用较大的线程池一般CPU核心数 * 2 方法二线程等待时间与线程CPU时间之比 1* CPU数目。3、混合型 可以将任务分为CPU密集型和IO密集型然后分别使用不同的线程池去处理按情况而定。