Executors

原创 2015年11月18日 17:59:18

      一、  初始化的几种方式 

               1、Executors.newCachedThreadPool()

               CacheThreadPool : 将为每一个任务创建一个线程(程序执行的过程中通常会创建与所需数量相同的线程),然后在回收旧线程时,停止创建新线程,因此它是合理的Executors首选。

               2、 Executors.newFixedThreadPool(5)

                FixedThreadPool :  用有限的线程集来执行提交的任务。

               3、 Executors.newSingleThreadExecutor()

                SingleThreadExecutor :    就像是线程数量为1 的FixedThreadPool,它的应用有很多,比如:

                                                            希望在另一个线程中长期存活的任务: 如监听进入的套接字连接的任务;

                                                            希望在线程中运行的短任务: 更新本地或远程日志的小任务、事件分发线程;


    二、 SingleThreadExecutor

             由于它是只有一个线程的线程池,所以如果我们向它提交多个任务,这些任务都是使用相同的线程,SingleThreadExecutor实现了维护自己的任务队列,下一个任务的开始时间,一定时上一个任务的结束时间,所以所有的任务会按提交的顺序执行。具有这个特点就可以避免并发的问题,免除加锁的操作。


       后期会持续更新,这篇博客,探讨Executors的使用,和不同的初始化对象的使用场景。

               

版权声明:本文为博主原创文章,转载请注明出处。

Executors

java.util.concurrent 类 Executors java.lang.Object   继承者 java.util.concurrent.Executors 此类是个工具类,它...
  • hudashi
  • hudashi
  • 2011年11月25日 15:04
  • 10869

Java Executors(线程池)

Sun在Java5中,对Java线程的类库做了大量的扩展,其中线程池就是Java5的新特征之一,除了线程池之外,还有很多多线程相关的内容,为多线程的编程带来了极大便利。为了编写高效稳定可靠的多线程程序...
  • coding_or_coded
  • coding_or_coded
  • 2011年10月09日 16:37
  • 47873

Java 并发:Executors 和线程池(不错)

本文译自:Java Concurrency – Part 7 : Executors and thread pools 让我们开始来从入门了解一下 Java 的并发编程。 本文主要介绍如何开始创建...
  • x_i_y_u_e
  • x_i_y_u_e
  • 2016年05月16日 20:53
  • 1713

java中Executor、ExecutorService、ThreadPoolExecutor介绍

源码非常简单,只有一个execute(Runnable command)回调接口  public interface Executor {     /**      * Executes the ...
  • linghu_java
  • linghu_java
  • 2013年12月04日 18:12
  • 97281

Executors与ThreadPoolExecutor(阿里发布的 Java开发手册中强制线程池不允许使用 Executors 去创建)

最近阿里发布的 Java开发手册中强制线程池不允许使用 Executors 去创建,而是通过 ThreadPoolExecutor 的方式,这样的处理方式让写的同学更加明确线程池的运行规则,规避资源耗...
  • qq_33300570
  • qq_33300570
  • 2017年10月30日 16:14
  • 1039

Executor,Executors,ExecutorService

1.Excutor      源码非常简单,只有一个execute(Runnable command)回调接口  public interface Executor {     /**  ...
  • qq_34622600
  • qq_34622600
  • 2017年06月21日 18:01
  • 100

java.util.concurrent 包中Executor与Executors的区别

1、Executor是Java线程池的顶级接口       Executor类的继承关系:        备注:ScheduledExecutorService描述的功能和Ti...
  • qq991029781
  • qq991029781
  • 2016年10月12日 16:31
  • 438

Executors.newSingleThreadExecutor的一些坑

还是直接上源码吧 public static ExecutorService newSingleThreadExecutor() { return new FinalizableDe...
  • zhuyucheng123
  • zhuyucheng123
  • 2016年06月02日 20:10
  • 10911

Executors.newFixedThreadPool(NTHREADS)线程池数量设置多少合适?

并发编程中线程池 是跑不了的, 用过线程池的朋友 都会遇到这样的一个问题: 如何合理地估算线程池大小? 怎么样设置 数量,执行效率最高? 怎么样设置 内存消耗最低? 是不是设置 线程池数量越大...
  • xiaozei523
  • xiaozei523
  • 2017年02月27日 11:36
  • 7291

Executors

import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util...
  • WJHelloWorld
  • WJHelloWorld
  • 2018年01月18日 15:23
  • 20
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Executors
举报原因:
原因补充:

(最多只允许输入30个字)