并发编程--在执行器中控制任务的完成
来源:互联网 发布:优化营商环境建议 编辑:程序博客网 时间:2024/05/05 06:30
FutureTask类提供了一个名为done的方法,允许在执行器中的任务执行结果之后,还可以执行一些代码。这个方法可以被用来执行一些后期处理操作,比如:产生报表,通过邮件发送结果或释放一些系统资源。当任务执行完成是受FutureTask类控制时,这个方法在内部被FutureTask类调用。在任务结果设置后以及任务的状态已改变为isDone之后,无论任务是否被取消或正常结束,done方法才被调用。
默认情况下,done方法的实现为空,即没有任务具体的代码实现,我们可以覆盖FutureTask类并实现done方法来改变这种行为。
下面我们通过一个例子看看FutureTask的奥秘
这里我们自定义了类ResultTask继承了FutureTask,FutureTask是一个泛型接口,ResultTask覆盖了FutureTask类的done方法,当ResultTask被取消或者完成时会自动调用该方法,当我们要创建ResultTask时,我们需要先创建Callable对象,Callable对象作为参数创建ResultTask对象,这里主线程先休眠1秒,让其他线程先执行,有些线程执行完成了调用ResultTask对象的isDone方法为true,没完成的为false。
0 0
- 并发编程--在执行器中控制任务的完成
- Java并发编程-20-在执行器中取消任务和控制任务的完成
- [笔记][Java7并发编程实战手册]4.9-4.10在执行器中控制任务的完成和取消任务FutureTask
- 在执行器中控制任务的完成
- 并发编程--在执行器中延迟执行任务
- 并发编程--在执行器中周期性执行任务
- 并发编程--在执行器中取消任务
- Java并发编程-19-在执行器中延时执行任务和周期性执行任务
- 并发编程--在执行器中分离任务的启动与结果的处理
- Java并发编程-21-在执行器中分离任务的启动与结果的处理
- [笔记][Java7并发编程实战手册]4.11-4.12在执行器中分离任务的启动和结果的处理和处理在执行器中被拒绝的任务
- 并发编程--在执行器中执行任务并返回结果
- Java并发编程-17-在执行器中执行任务并返回结果
- Java并发编程-18-在执行器中执行任务并处理结果
- Java7并发编程--4.2、在执行器中执行任务并且返回结果
- Java7并发编程--4.4、在执行器中执行任务并且返回结果
- [笔记][Java7并发编程实战手册]4.7-4.8 在执行器中延迟执行或则周期执行任务ScheduledThreadPoolExecutor
- [笔记][Java7并发编程实战手册]4.4 在执行器中执行任务并返回结果Callable、Future
- wsimport根据服务端的webservice生成客户端代码
- 自考《数据库系统原理》(8)之Power Builder 9.0的简介及应用
- POJ 2987 Firing 最大权闭合子图
- myeclipse 10安装jdbpm4 报错解决方案
- kmp 算法导读
- 并发编程--在执行器中控制任务的完成
- Java 连接Sql server数据库 组件模型
- apue 第五章 标准i/o库
- HDOJ 题目2824 The Euler function(欧拉函数)
- fatal error: 'HIToolbox/HIToolbox.h' file not found #import <HIToolbox/HIToolbox.h>
- 一个简单的Delphi与go lang通讯的例子
- linux下redis的安装,使用
- Weka算法Classifier-tree-RandomForest源码分析(一)算法
- Java基础_内部类:静态内部类、成员内部类、局部内部类、匿名内部类 (转)