博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ForkJoinPoolet用于类似递归
阅读量:6921 次
发布时间:2019-06-27

本文共 1379 字,大约阅读时间需要 4 分钟。

package cn.temp.temp;import java.util.concurrent.ForkJoinPool;import java.util.concurrent.RecursiveTask;// F:\myeclipseWorker\temp\bin\cn\temp\temp// java -classpath .; cn.temp.temp.Temp// java -classpath . cn.temp.temp.Temppublic class Temp {    public static void main(String[] args) throws Exception {        long start;        int count = 20;                start = System.currentTimeMillis();        int value = a(count);        System.out.println(value);        System.out.println("用时:" + (System.currentTimeMillis() - start) + " ms");        start = System.currentTimeMillis();        ForkJoinPool pool = new ForkJoinPool();        Task task = new Task(count);        pool.invoke(task);        System.out.println(task.getRawResult());        System.out.println("用时:" + (System.currentTimeMillis() - start) + " ms");    }    public static int a(int j) {        if (j <= 2)            return 1;        return a(j - 2) + a(j - 1);    }}@SuppressWarnings("serial")class Task extends RecursiveTask
{ int i; Task(int i) { super(); this.i = i; } @Override protected Integer compute() { if (i <= 2) return 1; Task t1 = new Task(i - 1); Task t2 = new Task(i - 2); invokeAll(t1, t2); return t1.getRawResult() + t2.getRawResult(); }}

 

转载于:https://www.cnblogs.com/feng2015/p/4511567.html

你可能感兴趣的文章
运维文章
查看>>
转-深入探讨Ruby与Python语法比较
查看>>
linux redhat6.5中 搭建NFS服务
查看>>
JMeter接口压力测试课程入门到高级实战(目录)
查看>>
extjs与struts开发的项目
查看>>
Linux20180423五周第四次课(4月23日)
查看>>
eclipse项目中,dubbo.xml不能识别schema报错
查看>>
MySQL中concat函数(连接字符串)
查看>>
[版本控制]原来Git分支都是这么用的
查看>>
浏览器兼容的获取event.offsetX的最简单方法
查看>>
JDK动态代理
查看>>
作为面试官,如何考察工程师的软素质
查看>>
怎么制作QQ动态表情包,GIF出处是哪
查看>>
万字长文概述NLP中的深度学习技术
查看>>
当量子计算遇到机器学习
查看>>
关于ScrollView can host only one direct child 问题
查看>>
Android WebView 缓存处理
查看>>
Require的使用 CMD
查看>>
为什么软件定制项目难做?软件外包公司该怎么发展?
查看>>
官方揭秘OpenAI如何打败人类:10个月训练4.5万年
查看>>