为什么使用 Executor 框架比使用应用创建和管理线程好?
为什么要使用 Executor 线程池框架
- 1、 每次执行任务创建线程 new Thread()比较消耗性能,创建一个线程是比较耗时、耗资源的。
- 2、 调用 new Thread()创建的线程缺乏管理,被称为野线程,而且可以无限制的创建,线程之间的相互竞争会导致过多占用系统资源而导致系统瘫痪,还有线程之间的频繁交替也会消耗很多系统资源。
- 3、 直接使用 new Thread() 启动的线程不利于扩展,比如定时执行、定期执行、定时定期执行、线程中断等都不便实现。
使用 Executor 线程池框架的优点
- 1、 能复用已存在并空闲的线程从而减少线程对象的创建从而减少了消亡线程的 开销。
- 2、 可有效控制最大并发线程数,提高系统资源使用率,同时避免过多资源竞争。
- 3、 框架中已经有定时、定期、单线程、并发数控制等功能。
综上所述使用线程池框架 Executor 能更好的管理线程、提供系统资源使用率。