作用:

  接受多线程的执行结果

全路径:

  java.util.concurrent

声明:

  public interface Future<V>

类图结构:

方法

boolean cancel(boolean mayInterruptIfRunning);//方法可以用来停止一个任务,如果任务可以停止(通过mayInterruptIfRunning来进行判断),则可以返回true,如果任务已经完成或者已经停止,或者这个任务无法停止,则会返回false.
boolean isCancelled(); //判断当前方法是否取消
boolean isDone(); //判断当前方法是否完成
V get() throws InterruptedException, ExecutionException; // 方法可以当任务结束后返回一个结果,如果调用时,工作还没有结束,则会阻塞线程,直到任务执行完毕
V get(long timeout, TimeUnit unit)
throws InterruptedException, ExecutionException, TimeoutException; //做多等待timeout的时间就会返回结果

举个例子

  Callable callable=new Callable() {
@Override
public String call() throws Exception {
Thread.sleep(1000*5);
return "233";
}
};
FutureTask<String> ft=new FutureTask<>(callable);
new Thread(ft).start();
System.out.println(ft.get());

最新文章

  1. ABP源码分析二十五:EventBus
  2. 关于unity碰撞检测器的用法
  3. 等比例压缩图片到指定的KB大小
  4. 你真的熟悉background吗?
  5. OC面向对象特性: 继承
  6. Oracle加密表空间进行数据加密的示例
  7. mysqld_safe启动报错 mysqld_safe The file /usr/local/mysql/bin/mysqld does not exist or is not executable
  8. Java从零开始学四十二(DOM解析XML)
  9. 为CKEditor开发插入代码的插件 已提供下载
  10. Git详细教程---多人协作开发
  11. JavaScript实现动画效果
  12. I2C(三) linux3.4(内核分析)
  13. Vmware网络不可达
  14. Java的命名规范
  15. Android_注解+反射代替findViewById()
  16. Python安装第三方库的安装技巧
  17. Application failed to start because it could not find or load the QT platform plugin “windows”
  18. Python 字典的遍历
  19. django-session和cookie
  20. mysql5.6.23安装 步骤

热门文章

  1. javascript 模块化 (切记:学习思想)
  2. java高并发系列 - 第7天:volatile与Java内存模型
  3. c# Winform 加载窗体
  4. MSSQL查询当前登录进程以及执行状态
  5. \&quot; 转义字符, \a系统警报,逐字字符串(verbatim string)
  6. 如何将vim改造为python的IDE
  7. ThreadLocal(线程本地存储)
  8. bug调试宝典
  9. 前端开发JS——jQuery常用方法
  10. 一文解读DDD (转)