- java.lang.Object
-
- java.util.concurrent.ForkJoinTask<V>
-
- java.util.concurrent.RecursiveTask<V>
-
- 实现的所有接口
-
Serializable
,Future<V>
public abstract class RecursiveTask<V>extends ForkJoinTask<V>
递归结果ForkJoinTask
。对于一个经典的例子,这里有一个计算Fibonacci数的任务:
class Fibonacci extends RecursiveTask<Integer> { final int n; Fibonacci(int n) { this.n = n; } protected Integer compute() { if (n <= 1) return n; Fibonacci f1 = new Fibonacci(n - 1); f1.fork(); Fibonacci f2 = new Fibonacci(n - 2); return f2.compute() + f1.join(); } }
- 从以下版本开始:
- 1.7
- 另请参见:
- Serialized Form
-
-
构造方法摘要
构造方法 构造器 描述 RecursiveTask()
-
方法摘要
所有方法 实例方法 抽象方法 具体的方法 变量和类型 方法 描述 protected abstract V
compute()
该任务执行的主要计算。protected boolean
exec()
实现RecursiveTask的执行约定。-
声明方法的类 java.util.concurrent.ForkJoinTask
adapt, adapt, adapt, cancel, compareAndSetForkJoinTaskTag, complete, completeExceptionally, fork, get, get, getException, getForkJoinTaskTag, getPool, getQueuedTaskCount, getRawResult, getSurplusQueuedTaskCount, helpQuiesce, inForkJoinPool, invoke, invokeAll, invokeAll, invokeAll, isCompletedAbnormally, isCompletedNormally, join, peekNextLocalTask, pollNextLocalTask, pollSubmission, pollTask, quietlyComplete, quietlyInvoke, quietlyJoin, reinitialize, setForkJoinTaskTag, setRawResult, tryUnfork
-
声明方法的类 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
声明方法的接口 java.util.concurrent.Future
isCancelled, isDone
-
-
-
-
方法详细信息
-
compute
protected abstract V compute()
该任务执行的主要计算。- 结果
- 计算的结果
-
exec
protected final boolean exec()
实现RecursiveTask的执行约定。- Specified by:
-
exec
类ForkJoinTask<V>
- 结果
-
true
如果已知此任务已正常完成
-
-