为什么要使用线程池? 我们有两种常见的创建线程的方法,一种是继承Thread类,一种是实现Runnable的接口(Thread类其实也是实现了Runnable接口)。但是我们创建这两种线程在运行结束后都会被虚拟机销毁,如果线程数量多的话,频繁的创建和销毁线程会大大浪费时间和效率,更重要的是浪费内存。使用线程池能有效的控制这种线程的创建和销毁,而且能够对创建的线程进行有效的管理。