特点: 队列中有优先级比较的线程池

使用案例:

val pool: ExecutorService = ThreadPoolExecutor(3, 3, 0, TimeUnit.SECONDS,PriorityBlockingQueue<Runnable>()
)
复制代码
暂时先用java写着
public abstract class PriorityRunnable implements RUnnable, Comparable<PriorityRunnable> {private int priority;public PriorityRunnable(int priority) {if (priority < 0) {throw new IllegalArgumentException();}this.priority = priority;}public int getPriority() {return priority;}@Overridepublic int compareTo(@NonNull PriorityRUnnable another) {int me = this.priority;int anotherPri = another.getPriority();return me == anotherPri ? 0 : me < anotherPri ? 1 : -1;}@overridepublic void run() {doSomeThing();}protected abstract void doSomeThing();
}
复制代码
txt.click {for (i in 0..99) {val priority = ipool.execute(object: PriorityRunnable(priority) {override doSomeThing() {log("优先级${proiority}的任务被执行")try {Thread.sleep(2000)}catch (e: Exception) {e.printStackTrace()}}})}
}
复制代码

转载于:https://juejin.im/post/5cc564ebf265da0378759ff0

一步步了解线程池之自定义-PriorityThreadPool相关推荐

  1. springboot使用异步线程池执行自定义任务实例

    文章目录 1.介绍 配置类 业务层 控制层 1.介绍 在Spring中存在一个AsyncConfigurer接口,它是一个可以配置异步线程池的接口,因此只需要Java配置文件,实现AsyncConfi ...

  2. Java高并发编程详解系列-线程池原理自定义线程池

    之前博客的所有内容是对单个线程的操作,例如有Thread和Runnable的使用以及ThreadGroup等的使用,但是对于在有些场景下我们需要管理很多的线程,而对于这些线程的管理有一个统一的管理工具 ...

  3. 【Java线程】“打工人”初识线程池及自定义线程池实战

    目录 理论 原理 线程池创建 工作流程图 拒绝策略 参数设置 四种线程池 实战 理论 聊一下为什么要使用线程池? 程序的运行本质,就是通过使用系统资源(CPU.内存.网络.磁盘等等)来完成信息的处理, ...

  4. 四种常用线程池及自定义线程池参数详细分析

    文章目录 一.什么是线程池 二.常用的更方便的Executors工厂方法 三.自定义线程池 四.缓冲队列BlockingQueue 五. 排队的三种一般策略 六.拒绝策略 一.什么是线程池 线程池(英 ...

  5. 一篇文章带你搞定线程池的自定义创建和扩展

    文章目录 一.自定义线程创建:ThreadFactory 二.扩展线程池 一.自定义线程创建:ThreadFactory 看了那么多有关线程池的介绍,不知道大家有没有思考过一个基本的问题:线程池中的线 ...

  6. 这么讲线程池,彻底明白了

    大家好,我是老三,很高兴又和大家见面,最近降温,大家注意保暖. 这节分享Java线程池,接下来我们一步步把线程池扒个底朝天. 引言:老三取钱 有一个程序员,他的名字叫老三. 老三兜里没有钱,匆匆银行业 ...

  7. java并发之线程池

    文章目录 @[TOC] 1:ThreadPoolExcutor (1):ThreadPoolExcutor构造函数 (2):构造函数的参数 (3):图示 核心线程数 最大线程数 阻塞队列 (4):一个 ...

  8. 2020最新Java线程池入门(超详细)

    转 https://blog.csdn.net/weixin_43893397/article/details/104361154 [1]代码示例 /*** 线程池测试-自定义线程池创建方式* @si ...

  9. Springboot应用中线程池配置教程(2021版)

    前言:日常开发中我们常用ThreadPoolExecutor提供的线程池服务帮我们管理线程,在Springboot中更是提供了@Async注解来简化业务逻辑提交到线程池中执行的过程.由于Springb ...

最新文章

  1. gulp项目配置指南
  2. 大数据人力资源服务平台正式上线
  3. android 上滑隐藏view,Android CoordinatorLayout + AppBarLayout(向上滚动隐藏指定的View)
  4. 正则表达式(Java版整理)
  5. JAVAEE框架之SpringMVC基础
  6. 安卓学习笔记---Activity
  7. 如何在{{input}}中使用action
  8. 它来了!IntelliJ IDEA 2020.1 稳定版发布
  9. MyBatis当多个请求参数时处理方式
  10. computed 计算选项
  11. Android kernel源码下载与编译
  12. 浅谈计算机网络技术应用及发展,【网络技术论文】计算机网络技术的应用及发展(共2891字)...
  13. 学生签到系统c代码_学生信息管理系统C代码
  14. python-普通数据分析-科比职业生涯数据分析
  15. XJOI一级一段题解(g++,即C++),也可视作C++算法竞赛教程
  16. 麻将判断胡牌 java_麻将胡牌逻辑 java
  17. python数据集处理一些方法备份(长期更新)
  18. 漏洞建议:实施 TLS_FALLBACK_SCSV。此外,要么完全禁用 SSLv3,要么禁用以通过 SSLv3 的 CBC 模式操作的所有密码套件
  19. A005-AS项目结构解析
  20. 【Python相关】PyCharm如何修改行注释颜色

热门文章

  1. [转载] JAVA从菜鸟【入门】到新手【实习】一一一一Python 内置函数,标准库与第三方库(拓展库),常用框架
  2. 洛谷——P4053 [JSOI2007]建筑抢修
  3. vue.js基础知识篇(1):简介、数据绑定
  4. 题目1008:最短路径问题(SPFA算法)
  5. SQLServer如何取得随机获取的数据库记录
  6. 基于c的xml文件解析(转)
  7. 【RobotStudio学习笔记】(一)软件的安装与初步测试
  8. matlab相位相关图像配准,数字图像处理,相位相关图像配准
  9. 天庭最牛系统 推荐下载_围观RecSys2020 | 推荐系统顶会说了啥?(附论文打包下载)...
  10. intouch负值显示0_17、定位的盒子居中显示