[JAVA学习笔记-87]CompletionService简单分析
2017-06-08 13:43
405 查看
1、ExecutorCompletionService 的构造函数中,
aes 对应 AbstractExecutorService 或 null
completionQueue 对应 LinkedBlockingQueue<Future<V>> ,此队列用来保存FutureTask本身
2、执行submit
RunnableFuture<V> f = newTaskFor(task);
//Runnable/Callable对象封装到FutureTask<V> 中,FutureTask继承了 RunnableFuture接口,分别对应Future以及Runnable
executor.execute(new QueueingFuture(f));
//QueueingFuture 继承 FutureTask<Void>,而后者实现了Runnable
//在 QueueingFuture 的构造函数中执行了done将 上述的FutureTask加入到 completionQueue 中
3、take、poll操作都是直接调用 BlockingQueue的对应操作,返回后调用FutureTask的Future接口的get方法获取result
aes 对应 AbstractExecutorService 或 null
completionQueue 对应 LinkedBlockingQueue<Future<V>> ,此队列用来保存FutureTask本身
2、执行submit
RunnableFuture<V> f = newTaskFor(task);
//Runnable/Callable对象封装到FutureTask<V> 中,FutureTask继承了 RunnableFuture接口,分别对应Future以及Runnable
executor.execute(new QueueingFuture(f));
//QueueingFuture 继承 FutureTask<Void>,而后者实现了Runnable
//在 QueueingFuture 的构造函数中执行了done将 上述的FutureTask加入到 completionQueue 中
3、take、poll操作都是直接调用 BlockingQueue的对应操作,返回后调用FutureTask的Future接口的get方法获取result
相关文章推荐
- (Java2D 学习笔记系列) (一)一个简单的图像填充实例及其分析理解
- (Java2D 学习笔记系列) (一)一个简单的图像填充实例及其分析理解
- 【JfaceTextFramework学习笔记之四】TextViewer实现原理简单分析
- java 设计模式 学习笔记(1) - 简单工厂模式
- java学习笔记_类建立对象初始化过程分析
- core java 8 学习笔记(一) 一个简单的图片查看器的实现
- Java NIO 学习笔记 selector 行为机制分析(select操作 cancel操作)
- java学习笔记之使用MyEclipse写一个简单的登陆界面(二)
- java 从零开始,学习笔记之基础入门<线程及实例分析>(十九)
- Java学习笔记——SequenceInputStream类合并文件的综合举例分析
- java设计模式学习笔记-简单工厂模式
- JAVA 学习笔记 - 【Thread简单概念】
- 黑马java学习笔记_ArrayList 和HashSet的比较及HashCode分析和Java中内存泄漏的探讨
- java 并发编程学习笔记之volatile意外问题的正确分析解答
- Java 学习笔记 (13) - 基本内存分析 和 垃圾回收机制
- Java 学习笔记10:获取POST数据以及简单模板输出
- java学习笔记1 - Mybatis简单实例
- Java学习笔记(一)用Eclipse把一个简单游戏项目生成可执行的JAR文件
- Java菜鸟学习笔记--面向对象篇(十二):Package简单理解
- 黑马程序员--Java基础学习笔记之抽象类和接口、内存结构分析、Java APIs