Fork-Join 框架是 Doug Lea 大神在 JDK7 引入的。Fork 就是把大问题拆分成小问题,也就是大任务拆成多个子任务,并行执行子任务。Join 就是把任务的结果按顺序合并起来。
![]()
假设我们需要求️从 1-1 亿之间的数字和,按照Fork-Join的思想,可分为以下三步:
Step1.定义拆分子任务和合并子任务的规则
划分子任务的规则
首先将任务拆为 1-5 千万 和 5 千万 01 - 1 亿两个子任务,直到每个子任务计算的数字范围在 1 万以内的时候,我们才计算这个任务的和。
合并子任务的规则
同一父任务的所有子任务的结果再相加,就是这一父任务的结果。
Step2.充分利用计算机资源,最大并行的执行子任务
Step3.充分利用计算机资源,执行合并所有子任务,获得最终的结果
显然一般人做不了后两步,我们只需要把 ️怎么拆,怎么和 告诉 Fork-Join 框架,️Fork-Join 框架就帮我们做好 如何最大并行执行子任务 和 如何最有效合并子任务。
本站所有文章、数据、图片均来自互联网,一切版权均归源网站或源作者所有。文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,结果仅供参考,今日霍州所有文章均包含本声明。