- 1
- 0
- 约1.68万字
- 约 5页
- 2016-10-15 发布于广东
- 举报
java线程池步了解
系统启动一个新线程的成本是比较高的,因为它涉及与操作系统交互。在这种情形下,使用线程池可以很好的提高性能,尤其是当程序需要创建大量生存周期很短的线程时,更应该考虑使用线程池。
与数据库连接池类似的是,线程池在系统启动的时候创建大量空闲的线程,程序将一个Runnable对象传给线程池,线程池就会启动一条线程来执行该对象的run方法,当run方法执行结束后,该线程并不会死亡,而是再次返回线程池中成为空闲状态,等待下一个Runnable对象的run方法。
除此之外,使用线程池可以有效控制系统中并发线程的数量,但系统中包含大量并发线程时,会导致系统性能急剧下降,而线程池的最大线程数量可以控制系统中并发线程的数目不超过此数目。 在jdk1.5以前,开发者必须手动实现自己的线程池,从jdk1.5开始,java内建支持线程池。
相关类介绍:
java.util.concurrent.Executors:此类是一个工厂类,提供了生成线程池的方法,主要提供了以下几个静态方法来生成各种线程池。
newCachedThreadPool():创建一个具有缓存功能的线程池,系统根据需要创建线程,这些线程将被缓存newFixedThreadPool(int nThreads);创建一个可重用固定线程数的线程池,以共享的无界队列方式来运行这些线程,在需要时使用提供的 ThreadFactory 创建新线程
原创力文档

文档评论(0)