在对线程进行控制时,Executor虽然能够对其进行管理,但是缺少终止的功能,所以我们要用到Executor的进阶方法ExecutorServic来处理。ExecutorServic也是一种接口,相比较Executor功能更加丰富,支持一些前者没有的用法。下面我们就ExecutorService进行说明,并带来创建的方法。

1.ExecutorService说明

(1)ExecutorService它是线程池定义的一个接口,继承Executor。能够关闭线程池,提交线程获取执行结果,控制线程的执行。

(2)ExecutorService 还支持 Callable 形式的异步任务

submit(Callable task);
submit(Runnable task);
submit(Runnable task, T result);

2.创建ExecutorService方法

(1)Executors中的工厂类方法,例如:

ExecutorService executor = Executors.newFixedThreadPool(10);

除了newFixedThreadPool方法之外,Executors还包含了很多创建ExecutorService的方法。

(2)直接创建一个ExecutorService, 因为ExecutorService是一个interface,我们需要实例化ExecutorService的一个实现。

这里我们使用ThreadPoolExecutor来举例:

ExecutorService executorService =
new ThreadPoolExecutor(1, 1, 0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue());

到此这篇关于java中ExecutorService创建方法总结的文章就介绍到这了,更多相关java中ExecutorService有几种创建方法内容请搜索乐虎体育以前的文章或继续浏览下面的相关文章希望大家以后多多支持乐虎体育!

标签:

java中ExecutorService创建方法总结的更多相关文章

  1. spring使用RedisTemplate操作Redis数据库

    一.什么是RedisRedis是一个非关系型数据库,具有很高的存取性能,一般用作缓存数据库,减少正常存储数据库的压力。Redis可以存储键与5种不同数据结构类型之间的映射,这5种数据结构类型分别为String(字符串)、List(列表)、Set(集合)、Hash(散列)和 Zset(有序集合)。下面......

  2. 使用Java语言编写一个五子棋UI界面并实现网络对战功能(非局域网)

    使用Java语言编写一个五子棋UI界面并实现网络对战功能(非局域网)使用Java语言编写一个五子棋UI界面并实现网络对战功能(非局域网)一,前期准备1,Java IDE(Eclipse)与JDK的安装与配置jdk-15.0.1-免配置路径版提取码:earu免安装版Eclipse 解压即可使用提取码:......

  3. java集合(List Set Map的使用

    ListList的元素以线性方式存储,可以存放重复对象,List主要有以下两个实现类:ArrayList : 长度可变的数组,可以对元素进行随机的访问,向ArrayList中插入与删除元素的速度慢。LinkedList: 采用链表数据结构,插入和删除速度快,但访问速度慢。SetSet中的......

  4. Java 添加数字签名到Excel以及检测、删除签名

    Excel中可添加数字签名以供文档所有者申明文档的所有权或有效性。文本以Java代码示例介绍如何在Excel文档中对数字签名功能进行相关操作,包括如何添加签名到Excel、检测Excel文档是否已签名,以及如何删除Excel文档中的签名。本次代码测试环境Excel版本:2013编译环境:Intell......

  5. Java关于继承、重写与重载、封装、接口的硬核干货

    Java语言在面向对象方面的知识点复杂繁琐,但是几乎是每个小伙伴学习编程必须踩的坑,其实,面向对象的底层都是一些计算机底层知识的结合,所以,不注重基础的程序猿,一定不是一个可以走的远的程序猿。那么,今天,我们先逐一地深入了解继承、重载、接口和构造器的知识。在学习这篇文章之前,如果有小伙伴对new过程......

  6. Java常见面试题之final在java中的作用是什么

    谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字。另外,Java中的String类就是一个final类。一、final关键字的基本用法在Java中,final关键字可以用来修饰类、方法和变量(包括成员变量和局部变量)。下面就从这三个方面来了解一下fina......

  7. Java如何不解压读取.zip的文件内容

    前言最近项目中需要拿到.zip文件中的文件内容,之前的做法是先解压到某个目录然后在对里面的文件进行处理,后面发现其实可以不用这么做,jdk中自带的包就可以解决这个问题。示例如下:public static void main(String[] args) throws IOException {//......

  8. Java中Jackson快速入门

    Java生态圈中有很多处理JSON和XML格式化的类库,Jackson是其中比较著名的一个。虽然JDK自带了XML处理类库,但是相对来说比较低级,使用本文介绍的Jackson等高级类库处理起来会方便很多。引入类库由于Jackson相关类库按照功能分为几个相对独立的,所以需要同时引入多个类库,为了方便......

  9. Java 集合学习笔记

    Java集合自学学习笔记,内容主要包含:Collection接口及其子接口 List、Set,Iterator 迭代器接口,Map接口核Collections 工具类。@目录Java 集合(容器)一、Java 集合框架概述二、Collection 接口方法三、Iterator 迭代器接口1. 使用 ......

  10. 这么优雅的Java ORM没见过吧

    Java的ORM框架有很多,但由于Java语言的限制大部分都不够优雅也不够简单,所以作者只能另辟蹊径造轮子了。照旧先看示例代码了解个大概,然后再解释实现原理。一、ORM示例1. Insertpublic CompletableFuture insert() {var obj = new sys.en......

随机推荐

  1. java中DelayQueue实例用法详解

    在阻塞队里中,除了对元素进行增加和删除外,我们可以把元素的删除做一个延迟的处理,即使用DelayQueue的方法。这里的删除需要一定的时间才能生效,有点类似于过期处理的理念。下面我们就DelayQueue的概念、特点进行讲解,然后在代码示例中体会DelayQueue的使用。1.概念是一个带有延迟时间......

  2. python 制作网站筛选工具(附源码)

    一.思路1.整体思路2.代码思路思路很简单,就是用python发送请求,提取响应体中的状态码加以判断,最后保存到本地txt文本中,以实现网站信息的筛选。二.撰写代码import timeimport requestsimport urllib3from concurrent.futures impo......

  3. Java 添加数字签名到Excel以及检测、删除签名

    Excel中可添加数字签名以供文档所有者申明文档的所有权或有效性。文本以Java代码示例介绍如何在Excel文档中对数字签名功能进行相关操作,包括如何添加签名到Excel、检测Excel文档是否已签名,以及如何删除Excel文档中的签名。本次代码测试环境Excel版本:2013编译环境:Intell......

  4. 如何在Vue项目中添加接口监听遮罩

    一、业务背景使用遮罩层来屏蔽用户的非正常操作,是前端经常使用的方式。但是在一些项目中,并没有对遮罩层进行统一管理,这就会造成如下的问题:(1)所有的业务组件都要引入遮罩层组件,也就是每个.vue业务组件,都在template中引入了Mask组件。组件在项目的各个角落都存在,不利于管理,代码极度冗余。......

  5. python使用numpy中的size()函数实例用法详解

    在python中,提到如何计算多维数组和矩阵,那一定会想到numpy。numpy定义了矩阵和数组,为它们提供了相关的运算。size中文解释为大家、尺寸的意思,如果想要统计矩阵元素个数,使用size()函数就可以解决。1、Numpy size()函数主要是用来统计矩阵元素个数,或矩阵某一维上的元素个数......

  6. Perl 使用 Net::FTP 从 FTP 上下载文件

    use Net::FTP;$ftp = Net::FTP->new("ftp.cpan.org", Timeout => 30)or die "Could not connect.\n";$username = "anonymous&qu......

  7. python jinja2模板的使用

    模板的用处jinja2 可以用来修改配置文件,把配置文件的关键地方可以用变量来进行替换模板语法模板语法和django的模板语法差不多 在jinja2中,存在三种语法:控制结构{% %}变量取值{{ }}注释{# #}for 循环{% for user in users %}{{user.userna......

  8. Perl字符串处理函数大全

    下面请看本文详细介绍.Perl字符串处理函数1. index语法:position=index(string,substring,position);语义:返回子串substring在字符串string中的位置,如果不存在则返回-1。参数position是可选项,表示匹配之前跳过的字符数,或者说从该......

  9. vue 递归组件的简单使用示例

    前言递归 相信很多同学已经不陌生了,算法中我们经常用递归来解决问题。比如经典的:从一个全为数字的数组中找出其中相加能等于目标数的组合。思路也不难,循环数组取值,不断递归相加,直到满足目标数条件。递归虽然能解决大部分,但弊处在于,很容易写出死循环的代码,导致爆栈。下面以我实际业务场景讲讲递归在vue组......

  10. Java中的Valid和Validated的比较内容

    如果要添加接口校验,需要1,在接口方法中请求参数前面添加@Valid注解,不需要在接口的实现类上添加@Valid注解,也不需要@Validated注解:addAnimal(@Valid Animal a)2,在请求对象类的每个要校验的字段上添加@Valid注解,也不需要在类上添加@Validated......