java线程池参数

 public ThreadPoolExecutor(int corePoolSize,
                              int maximumPoolSize,
                              long keepAliveTime,
                              TimeUnit unit,
                              BlockingQueue<Runnable> workQueue,
                              ThreadFactory threadFactory,
                              RejectedExecutionHandler handler)

参数说明:

    corePoolSize:核心线程数

    maximumPoolSize:最大线程数

    keepAliveTime:闲置线程存活时间

    unit:时间单位

    workQueue:线程队列

    threadFactory:线程工厂

    handler:异常处理策略

比如去银行柜台办理业务,银行一共有10个办理窗口(最大线程数),平时只有5个窗口开放(核心线程数)。如果开放的5个窗口都被占用,而且银行里排了很多人,就类似于线程队列已满,这个时候行长决定把剩下的5个窗口也打开,如果10个窗口还是处理不过来,银行大厅已经人满为患了,行长决定暂时封闭大门,不允许再进来人了,这就类似于线程的异常处理策略。闲置线程存活时间就相当于运行窗口业务员休息的时间。

猜你喜欢

转载自kevin-yangs.iteye.com/blog/2366902