美文网首页
线程池的基本知识

线程池的基本知识

作者: 我是邱邱 | 来源:发表于2019-04-11 23:59 被阅读0次
线程池的四个组成部分:

1.线程池管理器:用于创建并管理线程池,包括 创建线程池,销毁线程池,添加新任务;
2.工作线程:线程池中线程,在没有任务时处于等待状态,可以循环的执行任务;
3.任务接口:每个任务必须实现的接口,以供工作线程调度任务的执行,它主要规定了任务的入口,任务执行完后的收尾工作,任务的执行状态等;
4.任务队列:用于存放没有处理的任务。提供一种缓冲机制。
线程池:java.util.concurrent包下面提供了一个Executors类,用于创建线程池,

线程池的种类:
1.ExecutorService newFixedThreadPool(int nThreads)

固定线程个数的线程池,每提交一个任务就是一个线程,达到固定个数时再过来的线程进入等待队列知道其他的线程任务执行完成才会继续执行

2.ExecutorService newSingleThreadExecutor()

单个线程的线程池,即线程池中每次只有一个线程工作,单线程串行执行任务

3.ExecutorService newCachedThreadPool()(强烈推荐)

可缓存线程池,当线程池大小超过了处理任务所需要的线程数,那么就会回收掉部分空闲的线程(一般是超过60秒未执行的线程),当有新的线程启动时,线程池中又回添加新的线程。该线程池的有点是可以对线程池自动收放

4.ScheduledExecutorService ScheduledThreadPoolExecutor(int corePoolSize)

线程数无限制,可以由我们自己决定,可以定时和周期性的执行线程

java提供的关于线程池的类与接口:

interface Executor接口:表示线程池接口,里面提供了执行现成的方法

void execute(Runnable command);

interface ExecutorService extends Executor:提供了一些管理线程池的一些方法,该接口的默认实现是ThreadPoolExecutor类

//关闭线程池
void shutdown();
boolean isShutdown();

class Executors:提供了一些静态方法,用于生成ExecutorService的一些实例方法

参考文档:

https://www.cnblogs.com/aspirant/p/6920418.html

相关文章

  • ThreadPoolExecutor线程池的配置优化详解

    ThreadPoolExecutor线程池的一些基本知识,创建 ThreadPoolExecutor对象,这个对象...

  • 线程池的基本知识

    线程池的四个组成部分: 1.线程池管理器:用于创建并管理线程池,包括 创建线程池,销毁线程池,添加新任务;2.工作...

  • Java多线程并发04——合理使用线程池

    在此之前,我们已经了解了关于线程的基本知识,今天将为各位带来,线程池这一技术。关注我的公众号「Java面典」了解更...

  • java----线程池

    什么是线程池 为什么要使用线程池 线程池的处理逻辑 如何使用线程池 如何合理配置线程池的大小 结语 什么是线程池 ...

  • java线程池

    线程VS线程池 普通线程使用 创建线程池 执行任务 执行完毕,释放线程对象 线程池 创建线程池 拿线程池线程去执行...

  • Spring Boot之ThreadPoolTaskExecut

    初始化线程池 corePoolSize 线程池维护线程的最少数量keepAliveSeconds 线程池维护线程...

  • 线程池

    1.线程池简介 1.1 线程池的概念 线程池就是首先创建一些线程,它们的集合称为线程池。使用线程池可以很好地提高性...

  • java 线程池使用和详解

    线程池的使用 构造方法 corePoolSize:线程池维护线程的最少数量 maximumPoolSize:线程池...

  • ThreadPoolExecutor线程池原理以及源码分析

    线程池流程: 线程池核心类:ThreadPoolExecutor:普通的线程池ScheduledThreadPoo...

  • Java线程池的使用

    线程类型: 固定线程 cached线程 定时线程 固定线程池使用 cache线程池使用 定时调度线程池使用

网友评论

      本文标题:线程池的基本知识

      本文链接:https://www.haomeiwen.com/subject/mvetwqtx.html