Java 线程池学习
主要有四种方式:
newFixedThreadPool:
创建拥有固定数量的线程池,用于线程的重用。在任何时候都最多有指定个数的线程在运行。当提交的任务多于指定的数量时,新提交的任务需要进行等待,直到原有任务运行完成。
但是请注意,如果单个线程关闭前的执行过程中出现故障,由于终止,如果需要执行后续任务,将会有新取而代之。
当线程池调用shutdown后才会停止。
newSingleThreadExecutor:
创建一个只有一个线程的线程池。(注意:但是请注意,如果单个线程关闭前的执行过程中出现故障,由于终止,如果需要执行后续任务,将会有新取而代之)任务保证是顺序执行的,在任何时候都只有一个线程在池中。和其他的比如newFixedThreadPool(1)不同的是,可以无须重新配置就能使用别的线程。
newCachedThreadPool:
创建一个可以线程池,如果需要的话,在池中可以创建足够多的线程,同时如果可以的话,也会重复使用以前构造的线程。这个线程池可以极大的提高那种短时间执行的异步任务的执行效率。如果不存在可重用的线程,那么会重新创建一个,并且添加到池中。如果一个一个线程60秒还没有被使用,那么将会被停止并且从池中移除。
newScheduledThreadPool:
创建一个定长线程池,支持递给你是以及周期性任务的执行。
其他还有:
newSingleThreadScheduledExecutor:
创建只有单个线程的线程池,线程定时周期性的执行任务。
newWorkStealingPool:
创建保持足够的线程来支持给定的并行级,并且可以使用多个队列来降低争用一个线程池。 等等。
转载于:https://www.cnblogs.com/youyouzaLearn/p/5351641.html
Java 线程池学习相关推荐
- Java线程池(1) - 问题驱动“Java线程池”学习
下面是几个Java线程池的问题,大家尝试回答一下: 1 使用线程池比手动创建线程好在哪里? 2 线程池的各个参数的含义? 3 线程池有哪 4 种拒绝策略? 4 有哪 6 种常见的线程池?什么是 Jav ...
- java 线程池学习小记
1. 为什么要是用线程池 反复创建线程开销大,用线程池可以让一部分线程一直处于运行状态,避免反复创建 过多的线程池会占用太多的内存,用线程池可以用少量的线程,避免了占用太多内存的问题 2. 使用线程池 ...
- Java线程池 - 问题驱动学习
Java线程池 本章内容: 1.问题驱动"Java线程池"学习 2.线程池的功能需求 3.实现Thread Pool模式 4.JUC Executors源码分析
- JAVA线程池ThreadPoolExecutor与阻塞队列BlockingQueue .
2019独角兽企业重金招聘Python工程师标准>>> 从Java5开始,Java提供了自己的线程池.每次只执行指定数量的线程,java.util.concurrent.Thread ...
- 转:JAVA线程池ThreadPoolExecutor与阻塞队列BlockingQueue
从Java5开始,Java提供了自己的线程池.每次只执行指定数量的线程,java.util.concurrent.ThreadPoolExecutor 就是这样的线程池.以下是我的学习过程. 首先是构 ...
- java线程池使用详解ThreadPoolExecutor使用示例
一 使用线程池的好处 二 Executor 框架 2.1 简介 2.2 Executor 框架结构(主要由三大部分组成) 1) 任务(Runnable /Callable) 2) 任务的执行(Exec ...
- Java线程池详解学习:ThreadPoolExecutor
Java线程池详解学习:ThreadPoolExecutor Java的源码下载参考这篇文章:Java源码下载和阅读(JDK1.8) - zhangpeterx的博客 在源码的目录java/util/ ...
- Java 线程池详解学习:FixedThreadPool,CachedThreadPool,ScheduledThreadPool...
Java常用的线程池有FixedThreadPool和CachedThreadPool,我们可以通过查看他们的源码来进行学习. Java的源码下载参考这篇文章:Java源码下载和阅读(JDK1.8) ...
- 基于Java线程池读取数据库中数据(学习+运用)
基于Java线程池读取数据库中数据(学习+运用) 以下是学习内容 Main.java import java.util.concurrent.ArrayBlockingQueue; import ja ...
- 四种Java线程池用法解析
四种Java线程池用法解析 本文为大家分析四种Java线程池用法,供大家参考,具体内容如下 http://www.jb51.net/article/81843.htm 1.new Thread的弊端 ...
最新文章
- Hystrix降级逻辑中如何获取触发的异常?
- PAT Basic 1032
- 将RGB格式的颜色值转换为十六进制
- MS SQL数据库日志压缩方法[转]
- 洛谷P2751 [USACO4.2]工序安排Job Processing
- select2中的ajax请求
- error while loading shared libraries: libtinfo.so.5
- 设计模式分类及UML汇总
- Redis开发与运维读书笔记
- 又一打包工具介绍:Installshield 打包安装包心得
- 【laravel】切换语言包 中文,英文
- spss数据统计分析工具IBM SPSS Statistics 26 for Mac安装教程
- java较全的面试题
- 【CSDN】markdown小技巧
- 多想和你拉手跳恰恰恰
- 离散信号分解与卷积和
- Postman -中文版-安装教程
- python numpy使用_Python NumPy使用
- java版溺尸掉三叉戟吗_我的世界1.13通用水鬼塔经验农场(刷三叉戟农场)【内有存档】...
- Openvino Linux 2022新版本(2.0)安装与运行sample流程