javajava 多线程 异步计算 FutureTask 源码详解
Posted 九师兄
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javajava 多线程 异步计算 FutureTask 源码详解相关的知识,希望对你有一定的参考价值。
1.概述
扩展阅读:【java】线程 ExecutorService 原理 源码 解释
1.1 问题
- FutureTask用来解决什么问题的?
- 为什么会出现?
- FutureTask类结构关系怎么样的?
- FutureTask的线程安全是由什么保证的?
- FutureTask结果返回机制?
- FutureTask内部运行状态的转变?
- FutureTask通常会怎么用?
举例说明。
1.2 FutureTask简介
FutureTask 为 Future 提供了基础实现,如获取任务执行结果(get)和取消任务(cancel)等。如果任务尚未完成,获取任务执行结果时将会阻塞
。一旦执行结束,任务就不能被重启或取消(除非使用runAndReset执行计算)。FutureTask 常用来封装 Callable 和 Runnable,也可以作为一个任务提交到线程池中执行。除了作为一个独立的类之外,此类也提供了一些功能性函数供我们创建自定义 task 类使用。FutureTask 的线程安全由CAS来保证
。<
以上是关于javajava 多线程 异步计算 FutureTask 源码详解的主要内容,如果未能解决你的问题,请参考以下文章