分支合并框架

Posted hpdblogs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分支合并框架相关的知识,希望对你有一定的参考价值。

 

0-100求和:
class
MyTask extends RecursiveTask<Integer>{ public static final int ADJAST_VALUE = 10; private int begin; private int end; private int result; public MyTask(int begin, int end) { this.begin = begin; this.end = end; } @Override protected Integer compute() { if((end-begin)<=ADJAST_VALUE){ for (int i = begin; i <=end ; i++) { result = result+i; } }else{ int mid =(begin+end)/2; MyTask myTask1 = new MyTask(begin,mid); MyTask myTask2 = new MyTask(mid+1,end); myTask1.fork(); myTask2.fork(); result = myTask1.join()+myTask2.join(); } return result; } } /** * 分支合并例子 * ForkJoinPool * ForkJoinTask * RecursiveTask */ public class ForkJoinDemo { public static void main(String[] args) throws ExecutionException, InterruptedException { MyTask myTask = new MyTask(0,100); ForkJoinPool forkJoinPool = new ForkJoinPool(); ForkJoinTask forkJoinTask = forkJoinPool.submit(myTask); System.out.println(forkJoinTask.get()); } }

 

以上是关于分支合并框架的主要内容,如果未能解决你的问题,请参考以下文章

使用分支/合并框架执行并行求和

分支合并框架

11.ForkJoinPool 分支/合并框架 (工作窃取)

13JUC--ForkJoinPool 分支/合并框架 工作窃取(未完成)

12_分支合并框架 Fork/Join

12_分支合并框架 Fork/Join