为什么要用线程池? 我们都知道,每一次创建一个线程,JVM后面的工作包括:为线程建立虚拟机栈.本地方法栈.程序计数器的内存空间(下图可看出),所以线程过多容易导致内存空间溢出.同时,当频繁的创建和销毁线程容易浪费系统的计算能力在资源的回收和申请中. 另外:创建过多的线程,会导致cpu在线程中的切换时间比处理时间还多,大大降低了系统的吞吐量.因此我们使用线程池如下好处: 有效控制线程的数量,防止线程数量过多. 提高线程的利用程度,避免频繁的创建及销毁线程. 有更灵活的线程使用方式及拒绝措施. 再给…