线程池

线程池概念

简单理解,它就是一个管理线程的池子。

  • 它帮我们管理线程,避免增加创建线程和销毁线程的资源损耗。因为线程其实也是一个对象,创建一个对象,需要经过类加载过程,销毁一个对象,需要走GC垃圾回收流程,都是需要资源开销的。
  • 提高响应速度。 如果任务到达了,相对于从线程池拿线程,重新去创建一条线程执行,速度肯定慢很多。
  • 重复利用。 线程用完,再放回池子,可以达到重复利用的效果,节省资源。

简单线程池的五个要素

1.任务队列--调度
2.拒绝策略--(抛出异常、直接丢弃、阻塞、临时队列)性能保护
3.init(min)
4.active
5.max

比如定时任务Quartz(免费版)/Control-M(商业版)就运用到线程池

线程池里的线程不能一味地增加,有可能使虚拟机栈崩溃

原文地址:https://www.cnblogs.com/zheaven/p/12083529.html