栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

ForkJoinPool使用

ForkJoinPool使用

使用方法:
ForkJoinPool forkJoinPool = new ForkJoinPool.commonPool();
ForkJoinTask<"这里是相关的返回类型"> submit = forkJoinPool.submit(() -> "这里调用相关的方法");
... //下面可以定义多个ForkJoinTask 用于
ForkJoinPool介绍:

ForkJoin是由JDK1.7后提供多线并发处理框架,ForkJoin的框架的基本思想是分而治之。使用ForkJoin将相同的计算任务通过多线程的进行执行。从而能提高数据的计算速度。在google的中的大数据处理框架mapreduce就通过类似ForkJoin的思想。通过多线程提高大数据的处理。


ForkJoinPool工作窃取:

当任务分为多个子任务时,每个子任务的处理时间不一样。

例如此时有A,B两个任务,子任务A耗时1ms,子任务B还在执行,那么子任务A会一直等待子任务B结束,所以最终耗时为子任务B的耗时。

而如果子任务A执行完毕后,处理子任务B的任务,并且执行完毕后将任务归还给子任务B。这样就可以提高执行效率,这就是工作窃取。


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/326944.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号