文档章节

java中的线程池

寞夏者
 寞夏者
发布于 2017/02/25 21:25
字数 467
阅读 10
收藏 1

    创建线程池有几种方式分别为:

  • newFixedThreadPool(int poolSize)
    • 创建一个固定的长度的线程池,每次提交任务的时候会创建一个新的线程,直到线程池最大的范围。自动回收哪些空闲的线程,如何发生异常或者结束了,线程池会补充一个新线程
  • newCachedThreadPool()
    • 创建一个可缓存的线程池,当线程池线程超过处理请求的时候,将自定回收线程。而当需求添加的时候,可以自动添加新的线程。线程池的规模不存在限制
  • newSingleThreadExecutor()
    • 一个单线程的Executor,它创建单个工作线程来执行任务。如何改线程异常结束了,会创建一个新的线程来替补结束的线程继续工作。它的特点是能依照列队中顺序来串行执行任务
  • newScheduledThreadPool(int poolSize)
    •  创建一个固定长度的线程,而且一延迟或定时的方式来执行任务

ExecutorService threadPool= Executors.newFixedThreadPool(5);

        for(int j=0;j<10;j++){

            final int index=j;

        threadPool.execute(new Runnable(){

            @Override

            public void run() {

                for(int i=0;i<5;i++){

                    System.out.println(Thread.currentThread().getName()+"运行次数"+i+"线程数"+index);

                }

         }});

© 著作权归作者所有

共有 人打赏支持
上一篇: 多数据添加删除
下一篇: java中不变对象
寞夏者
粉丝 2
博文 17
码字总数 4004
作品 0
昌平
私信 提问
JVM 运行时数据区简介及堆与栈的区别

理解JVM运行时的数据区是Java编程中的进阶部分。我们在开发中都遇到过一个很头疼的问题就是OutOfMemoryError(内存溢出错误),但是如果我们了解JVM的内部实现和其运行时的数据区的工作机制,...

大数据之路
2015/08/02
0
1
Java并发编程笔记之ThreadLocal内存泄漏探究

使用 ThreadLocal 不当可能会导致内存泄露,是什么原因导致的内存泄漏呢? 我们首先看一个例子,代码如下: / Created by cong on 2018/7/14. */public class ThreadLocalOutOfMemoryTest { ...

狂小白
07/14
0
0
可能是把Java内存区域讲的最清楚的一篇文章

写在前面(常见面试题) 基本问题: 介绍下 Java 内存区域(运行时数据区) Java 对象的创建过程(五步,建议能默写出来并且要知道每一步虚拟机做了什么) 对象的访问定位的两种方式(句柄和...

Snailclimb
08/22
0
0
深入Java核心:JVM中的栈和局部变量

Java开发中,每当我们在程序中使用new生成一个对象,对象的引用存放在栈里,而对象是存放在堆里的。可以看出栈在Java核心的重要位置。今天我们就继续深入Java核心这个系列,为您介绍Java中的...

郭二翔
2011/12/19
0
0
Java虚拟机运行时数据区结构

本文部分参考自《Java虚拟机规范(Java SE 7版)》的中译本和周志明的《深入理解Java虚拟机》,另加个人理解。原书对Java虚拟机运行时数据区描述只有6页,同时参考其他网络网资料,个人能力所...

foodon
2014/12/09
0
4

没有更多内容

加载失败,请刷新页面

加载更多

数据进一步优化篇:千万级数据下的Mysql优化

前言 平时在写一些小web系统时,我们总会对mysql不以为然。然而真正的系统易用应该讲数据量展望拓展到千万级别来考虑。因此,今天下午实在是无聊的慌,自己随手搭建一个千万级的数据库,然后...

hansonwong
8分钟前
0
0
【亲测】centos 7 下安装cuDNN

【亲测】centos 7 下安装cuDNN cudnn: https://developer.nvidia.com/compute/machine-learning/cudnn/secure/v7.4.1.5/prod/10.0_20181108/cudnn-10.0-linux-x64-v7.4.1.5.tgz cudnn code ......

Goopand
18分钟前
0
0
说一说$emit和$on

一、$emit 1、this $emit('自定义事件名',要传送的数据); 2、触发当前实例上的事件,要传递的数据会传给监听器; 二、$on 1、VM.$on('事件名',callback) --------------------callback回调...

文文1
19分钟前
0
0
画出wav文件声音数据的波形曲线

wav文件的格式都有介绍 另外:wav总播放时间长度:如何得到WAV文件播放的总时间? 1、直接读取wav文件头信息,从文件起始地址偏移28个字节长度为4个字节保存的是每秒钟播放的字节数,从文件起...

whoisliang
35分钟前
1
0
0030-如何在CDH中安装Kudu&Spark2&Kafka

1.概述 在CDH的默认安装包中,是不包含Kafka,Kudu和Spark2的,需要单独下载特定的Parcel包才能安装相应服务。本文档主要描述在离线环境下,在CentOS6.5操作系统上基于CDH5.12.1集群,使用C...

Hadoop实操
36分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部