Java 线程池之FixedThreadPool(Java代码实战-003)
import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.ThreadPoolExecutor;/*** FixThreadPoolExecutorTest 定义一个可重用的固线程数的线程池*/ public class FixThreadPoolExecutorTest {public static void main(String[] args) {/** 把处理请求任务的线程数设置为固定的10, corePoolSize = maxPoolSize = 10* keepAliveTime设置为0L,表示空闲的线程会立刻终止* workQueue则是使用LinkedBlockingQueue,但是没有设置范围,那么则是最大值(Integer.MAX_VALUE)* 这基本就相当于一个无界队列了。 使用该“无界队列”则会带来哪些影响呢?当线程池中的线程数量等于corePoolSize* 时,如果继续提交任务,该任务会被添加到阻塞队列workQueue中,当阻塞队列也满了之后,则线程池会新建线程执行任务直到maximumPoolSize。 * 由于FixedThreadPool使用的是“无界队列”LinkedBlockingQueue,那么maximumPoolSize参数无效,* 同时指定的拒绝策略AbortPolicy也将无效。而且该线程池也不会拒绝提交的任务,如果客户端提交任务的速度快于任务的执行,* 那么keepAliveTime也是一个无效参数。*/ExecutorService pool = Executors.newFixedThreadPool(10);// 始终只有10个线程来处理请求任务,来不及处理的任务会放置于阻塞队列中for (int i = 0; i < 50; i++) {pool.submit(new Runnable() {@Overridepublic void run() {System.out.println("hello world! Execute ThreadName=" + Thread.currentThread().getName());}});}} }
Java 线程池之FixedThreadPool(Java代码实战-003)相关推荐
- java线程池笔记及相关代码
java线程池笔记: 线程池好处: 重用存在的线程,减少对象创建.消亡的开销,性能佳. 可有效控制最大并发线程数,提高系统资源的使用率,同时避免过多资源竞争,避免堵塞. 提供定时执行.定期执行.单线程 ...
- java 线程池 复用机制,java的线程池框架及线程池的原理
java 线程池详解 什么是线程池? 提供一组线程资源用来复用线程资源的一个池子 为什么要用线程池? 线程的资源是有限的,当处理一组业务的时候,我们需要不断的创建和销毁线程,大多数情况下,我们需要反复 ...
- 一文详解java线程池 详解Java线程池的七个参数 详解池化技术 java如何选择核心线程数 详解Java线程池的拒绝策略
目录 引言 线程池使用场景 加快请求响应(响应时间优先) 加快处理大任务(吞吐量优先) 特殊说明 线程池的池化技术 线程池的创建 手动创建 创建newFixedThreadPool线程池 创建newS ...
- java 线程池 初始大小,Java线程池ThreadPoolExecutor的实现和参数
接文章Java8线程池--底层为LinkedBlockingQueue的ThreadPoolExecutor,文章中简单介绍了线程池保持线程,并且从阻塞队列中获取任务执行的流程.本篇文章详细介绍线程池 ...
- java线程池队列场景,Java面试题汇总
01 并发宝典:面试专题 面试专题分为四个部分,分别如下 Synchronized 相关问题 可重入锁 ReentrantLock 及其他显式锁相关问题 Java 线程池相关问题 Java 内存模型相 ...
- 自定义java线程池_我的Java自定义线程池执行器
自定义java线程池 ThreadPoolExecutor是Java并发api添加的一项功能,可以有效地维护和重用线程,因此我们的程序不必担心创建和销毁线程,也不必关注核心功能. 我创建了一个自定义线 ...
- java 线程池 简介
线程的实现方式 java 多线程之 extends Thread java 多线程之 implements Runnable java 多线程之 implements Callable 线程池的使用 ...
- Java 线程池详解学习:FixedThreadPool,CachedThreadPool,ScheduledThreadPool...
Java常用的线程池有FixedThreadPool和CachedThreadPool,我们可以通过查看他们的源码来进行学习. Java的源码下载参考这篇文章:Java源码下载和阅读(JDK1.8) ...
- Java 线程池详解及实例代码
转载自 Java 线程池详解及实例代码 这篇文章主要介绍了Java 线程池的相关资料,并符实例代码,帮助大家学习参考,需要的朋友可以参考下 线程池的技术背景 在面向对象编程中,创建和销毁对象是很费时 ...
最新文章
- 【2016-09-27-DP小练】
- python限制输入长度_Python if语句问题,控制密码长度问题,求大神解救。
- Zipkin-1.19.0学习系列1:java范例
- java运算符试题,编程语⾔⾯试题之新版javase基础语法篇之运算符
- netty 5.0 源码分析(1)-----ButeBuf
- MacOS下安装Grafana、InfluxData、telegraf
- 『ExtJS』表单(二)表单行为与Asp.NET页面的消息回复
- Matlab 简单图像分割实战
- 如何写出成功的商业计划书
- 如何用Python操作PDF制作数据报告?
- 一次解决找不到 android.support.v7.XXX 问题
- PAT_乙级_1006_筱筱
- 网络中BN层的作用以及为什么冻结BN层
- h3c linux驱动 wn612_产品技术-H3C WN612双频无线网卡(802.11n)-新华三集团-H3C
- ASP+ACCESS注入—主要靠猜实现
- #2021,我们的浮生一日#
- 电子废弃物逆向物流模式研究
- 企查查爬虫python实现(二)报错与细节
- 数学建模拿到题目时思路
- Ubuntu18.04下UnixBench跑分