Android 中的线程池:
线程池的优点:
- 重用线程池中的线程,避免因为线程的创建和销毁所带来的性能开销。
- 能有效控制线程池的最大并发数,避免大量的线程之间因互相抢占系统资源而导致的阻塞现象。
- 能够对线程进行简单管理,并提供定时执行以及指定间隔循环执行等功能。
ThreadPoolExecutor
Android 中的线程池的概念来源于 Java 中的 Executor,Executor 是一个接口,真正的实现为 ThreadPoolExecutor。ThreadPoolExecutor 的构造方法中的参数直接影响线程池的功能特性。
public ThreadPoolExecutor(int corePoolSize,
int maximumPoolSize,
long keepAliveTime,
TimeUnit unit,
BlockingQueue<Runnable> workQueue,
ThreadFactory threadFactory,
RejectedExecutionHandler handler)
corePoolSize
线程池的核心线程数。默认情况下,核心线程会在线程中一直存活,即使它们处于闲置状态。当提交一个任务时,线程池创建一个新线程