java并发编程(9)– 线程池 创建 参数

 

一、线程池基本概念

概念:

线程池主要是控制运程的数量,将待处理任务放到等待队列,然后创建线程执些任务。

如果超过了最程数,则等待。

 

为什么程池/h2>

10年前单核CPU电脑,假的多线程,像团玩多个球,CPU需要来回切换。

现在是多核电脑,多个线程各在独CPU上,不换效率/span>。

 

线程池的优点:

  • 线程池做的只要是控制运线程数量,
  • 处理过程中将任务放列,然后在线程创建后启动这些 任务,
  • 如果线程数量超过了最量,超出数量的线程排队等候,等其他线程执毕,再从队列中取 出任务来执

 

线程池的主要特点为:

线程复控制最发数;管理线程。

1. 线程复/span>:不直new新线程,重复利/span>已经创建的线程来降低线程的创建和销毁开销,节省系 统资源。

2. 提应速度:当任务达到时,不建新的线程,直接利程池的线程。

3. 管理线程:可以控制最发数,控制线程的创建等。

 

体系:

Executor → ExecutorService → AbstractExecutorService → ThreadPoolExecutor 。

Thr eadPoolExecutor 是线程池创建的核。类似 Arrays 、 Collections 类, Executor 也有的类 Executors 。

 

 

二、线程池三种常建

Java中的线程池是通过Executor框架实现的,该框架中了Executor,Executors, ExecutorService,ThreadPoolExecutor这类。

 

newFixedThreadPool线程池

使inkedBlockingQueue 实现,定/span>线程池。

特点:执期任务性能好,创建线程池,有N个固定的线程,有固定线程数的线程

 

newSingleThreadExecutor线程池

使LinkedBlockingQueue 实现,只有线程。

特点:任务任务的执/span>,程

 

 

newCachedThreadPool线程池

使SynchronousQueue 实现,变/span>线程池。

特点:

执多短期异步任务,线程池根据需要创建新线程,但在先前构建的线程可将重们。

可扩容,遇强则强

 

 

三、线程池代码演示

 

 

四、线程池创建的七个参数

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月6日
下一篇 2021年1月6日

相关推荐