threadpool
execute方法执行逻辑有这样几种情况:
1、如果当前运行的线程少于corePoolSize,则会创建新的线程来执行新的任务;
2、如果运行的线程个数等于或者大于corePoolSize,则会将提交的任务存放到阻塞队列workQueue中;
3、如果当前workQueue队列已满的话,则会创建新的线程来执行任务;
4、如果线程个数已经超过了maximumPoolSize,则会使用饱和策略RejectedExecutionHandler来进行处理。
需要注意的是,线程池的设计思想就是使用了核心线程池corePoolSize,阻塞队列workQueue和线程池maximumPoolSize,这样的缓存策略来处理任务,实际上这样的设计思想在需要框架中都会使用。