创建线程池的,创建线程池的方式有哪些
作者:admin日期:2024-02-14 08:15:12浏览:65分类:资讯
什么是线程池?为什么要使用线程池?如何使用?
从源码可以看出,这种线程池只有一个核心线程,并且总线程数为 1。具体使用如下:一种核心线程数量固定,非核心线程数不固定的线程池。
线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建线程后自动启动这些任务。线程池线程都是后台线程。每个线程都使用默认的堆栈大小,以默认的优先级运行,并处于多线程单元中。
线程池作用就是限制系统中执行线程的数量。根据系统的环境情况,可以自动或手动设置线程数量,达到运行的最佳效果;少了浪费了系统资源,多了造成系统拥挤效率不高。用线程池控制线程数量,其他线程排队等候。
线程池,从名字的表明含义上我们知道线程池就是包含线程的一个池子,它起到新建线程、管理线程、调度线程等作用。既然Android中已经有了线程的概念,那么为什么需要使用线程池呢?我们从两个方面给出使用线程池的原因。
线程池是一种“池化”的线程使用模式,通过创建一定数量的线程,让这些线程处于就绪状态来提高系统响应速度,在线程使用完成后归还到线程池来达到重复利用的目标,从而降低系统资源的消耗。
线程池创建的四种
FixedThreadPool:固定大小的线程池。该线程池创建一定数量的线程来执行任务。CachedThreadPool:缓存线程池。该线程池创建的线程数量不固定,当有新任务需要执行时,会创建新的线程来执行任务。
固定大小的线程池、缓存线程池、单线程线程池、定时任务线程池。固定大小的线程池创建一定数量的线程来执行任务,当线程处于空闲状态时,也不会被回收。适用于需要限制线程数量的情况,如服务器端接受客户端请求的场景。
newFixedThreadPool:创建的是定长的线程池,可以控制线程最大并发数,超出的线程会在线程队列中等待,使用的是无界队列,核心线程数和最大线程数一样,当线程池中的线程没有任务时候立刻销毁,使用默认线程工厂。
线程池创建的4种方式与参数详解
newScheduedThreadPool 创建一个定长的线程池,而且支持定时的以及周期性的任务执行,支持定时及周期性任务执行。
FixedThreadPool:固定大小的线程池。该线程池创建一定数量的线程来执行任务。CachedThreadPool:缓存线程池。该线程池创建的线程数量不固定,当有新任务需要执行时,会创建新的线程来执行任务。
固定大小的线程池、缓存线程池、单线程线程池、定时任务线程池。固定大小的线程池创建一定数量的线程来执行任务,当线程处于空闲状态时,也不会被回收。适用于需要限制线程数量的情况,如服务器端接受客户端请求的场景。
Java中4种线程池 Java通过Executors提供四种线程池,分别为:newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。
ThreadPoolExecutor类是Java中的一个内置类,它可以用于创建和管理线程池。这个类提供了很多有用的方法和属性,例如可以指定线程池的大小、最大线程数、线程空闲时间等参数。
猜你还喜欢
- 06-04 excel表中求积怎么求,excel表求积的方式怎么样做
- 04-20 svg和svc无功补偿装置,svg无功补偿方式
- 04-18 redis缓存有几种方式,redis的缓存
- 04-16 适合编程c语言的软件,适合编程c语言的软件有哪些
- 04-15 创建网站英语,创建网站英语怎么写
- 04-14 java培训班哪里好,哪些java培训班
- 04-12 多线程下载软件,多线程下载有什么用
- 04-10 python编程软件要付费吗,python编程需要哪些软件
- 04-10 实例化bean的三种方式,bean的实例化是什么意思
- 04-10 数据库管理工具navicat,数据库管理工具有哪些
- 04-04 编程都有哪些软件,编程的软件叫什么名字
- 04-02 前端js框架有哪些,前端js框架有哪些
取消回复欢迎 你 发表评论:
- 最近发表
- 标签列表
- 友情链接
暂无评论,来添加一个吧。