简介

SingleThreadPool是使用单个工作线程的线程池。

创建方法

public static ExecutorService newSingleThreadExecutor() {return new FinalizableDelegatedExecutorService(new ThreadPoolExecutor(1, 1,0L, TimeUnit.MILLISECONDS,new LinkedBlockingQueue<Runnable>()));}

corePoolSize和maximumPoolSize都是1,即SingleThreadPool只有一个核心线程。其他参数都和FixedThreadPool一样。

execute方法执行

执行execute方法时,若当前运行的线程数未达到核心线程数(没有正在运行的线程),就创建一个新线程来处理任务;如果当前有运行的线程,就把任务添加到阻塞队列LinkedBlockingQueue。SingleThreadPool能够确保所有的任务都在一个线程中按照顺序逐一执行。

线程池之SingleThreadPool学习相关推荐

  1. Java 线程池详解学习:FixedThreadPool,CachedThreadPool,ScheduledThreadPool...

    Java常用的线程池有FixedThreadPool和CachedThreadPool,我们可以通过查看他们的源码来进行学习. Java的源码下载参考这篇文章:Java源码下载和阅读(JDK1.8) ...

  2. Java线程池详解学习:ThreadPoolExecutor

    Java线程池详解学习:ThreadPoolExecutor Java的源码下载参考这篇文章:Java源码下载和阅读(JDK1.8) - zhangpeterx的博客 在源码的目录java/util/ ...

  3. Java线程池 - 问题驱动学习

    Java线程池 本章内容: 1.问题驱动"Java线程池"学习 2.线程池的功能需求 3.实现Thread Pool模式 4.JUC Executors源码分析

  4. java定长池,java线程池源码学习

    使用Executors创建线程池 Executor是一个工厂类,可以直接创建线程池,从最简单的定长线程池开始学习 public static ExecutorService newFixedThrea ...

  5. 线程池之ScheduledThreadPool学习

    简介 ScheduledThreadPool是一个能实现定时.周期性任务的线程池. 创建方法 public static ScheduledExecutorService newScheduledTh ...

  6. 线程池之CachedThreadPool学习

    简介 CachedThreadPool是一个根据需要创建线程的线程池. 创建方法 public static ExecutorService newCachedThreadPool() {return ...

  7. 线程池之FixedThreadPool学习

    简介 FixedThreadPool是可重用固定线程数的线程池. 创建方法 public static ExecutorService newFixedThreadPool(int nThreads) ...

  8. java线程池的使用学习

    目录 1. 线程池的创建 2. 线程池的运行规则 3. 线程池的关闭 4. 线程池的使用场合 5. 线程池大小的设置 6 实现举例 1. 线程池的创建 线程池的创建使用ThreadPoolExecut ...

  9. java线程池 synchronized_java多线程学习(二) 之 synchronized

    在实现线程同步方法里,synchronized是java中最简单的方法. 官方解释: The use of synchronized methods or statements provides ac ...

最新文章

  1. python读取邮件发送日期和时间_Python读取指定日期邮件的实例
  2. 【jQuery源码】select方法
  3. 对象属性的调用_面向对象的三主线之一:Java类及类的成员(1)
  4. chm转pdf_简历是以PDF还是Word格式提交的?
  5. 搞多媒体开发?吴威麒:先拉个书单看看
  6. 北京黑马计算机培训宿舍图案,黑马经典图形!
  7. 前端学习(10):HTML语义化
  8. matlab 最小二乘法拟合_Scripy实现最小二乘法与股票K线回归
  9. python学习--面向过程程序设计实例
  10. Keepalived 配置实例
  11. android activity 通知 service,android activity和service通信问题
  12. VMWare File Format Learning Use VHD File To Boot VMWare CoreOS Docker Configuration And Runnin...
  13. 程序设计基础是C语言吗,程序设计基础(C语言)
  14. MongoVUE破解
  15. y-在C语言while语句中的意义,c语言while用法(C语言while用法)
  16. Git——详解操作码云
  17. 什么软件测试固态硬盘坏没坏,固态硬盘容易坏吗 SSD固态硬盘坏掉前有什么征兆【详细介绍】...
  18. python多元非线性回归_Python利用神经网络解决非线性回归问题实例详解
  19. Adobe Premiere Pro 2020 系统兼容性报告:不支持的视频驱动程序
  20. 【工业控制系统】工业控制系统(ICS) 安全简介第 2 部分

热门文章

  1. 遍历——PowerShell三分钟(十)
  2. Linux基础(9)文本处理三剑客之grep
  3. 宜人贷,指旺理财,投米网有什么不一样?
  4. Linux常用命令之rm
  5. ACCP学习旅程之----- 使用HTML语言开发商业站点(第一章 HTML的基本标签)
  6. vim graphics
  7. 用AjaxPro实现无刷新翻页效果及数据库分页技术介绍
  8. 大名鼎鼎的Requests库用了什么编码风格?
  9. Linux常用命令行
  10. 几种常用平衡树的概述(持续更新]