java线程池
JoshuaXin
这个作者很懒,什么都没留下…
展开
-
线程池ThreadPoolExecutor(二)继承关系和周边类
二:ThreadPoolExecutor的父类介绍(应该抽空画一个UML类图的)1.总览:该类继承了AbstractExecutorService抽象类,它实现了ExecutorService接口,ExecutorService又继承了Executor接口;2.Executor中定义了execute(Runnable)方法,这是在没有引入Callable之前的定义的,但是在引入了Calla...原创 2018-11-29 15:16:55 · 1280 阅读 · 0 评论 -
线程池ThreadPoolExecutor(四)方法介绍(待续)
1.核心方法execute(Runnable command)2.运行任务 final void runWorker(Worker w)3.添加任务 private boolean addWorker(Runnable firstTask, boolean core)原创 2018-11-29 15:25:17 · 148 阅读 · 0 评论 -
线程池ThreadPoolExecutor(三)成员变量
三:ThreadPoolExecutor成员变量和方法介绍1. 成员变量: a)corePoolSize核心池大小、maximumPoolSize最大线程数量,它们是用来控制线程的数目,总体流程为1:若小于Core则新建线程执行;2:若大于等于Core,则加入BlockingQueue;3:若BlockingQueue满了之后,若小于Maximum,则新建线程来执行任务,若大于等...原创 2018-11-29 15:25:34 · 1077 阅读 · 0 评论 -
线程池ThreadPoolExecutor(一)简介
一:简介1.在java1.5中发布的java.util.concurrent包中,包含了许多关于并发同步相关的工具,包括atomic原子类包、lock包、一些同步数据结构、异步Future,还有下面要分析的线程池相关,包括Executor、Executors、ThreadPoolExecutor、ForkJoin并发框架等;2.其中Executor是接口,Executors是与之对应的接口...原创 2018-11-29 14:12:58 · 214 阅读 · 0 评论 -
Guava Cache的使用和参数配置
一:适用场景 1.“尺寸较小”、“高频的读取操作”、“变更操作较少”,这样的场景下比较适合Guava这种“嵌入式”缓存; 2.当然对于一些“数据较大”、“需要一定的持久化”保障的,需要考虑redis、memcached等分布式缓存二:使用 1.创建方式:使用CacheLoader:这样可以直接使用cache.get(key)即可public static co...原创 2019-03-19 12:00:27 · 5463 阅读 · 0 评论