Fork/Join的应用

本文探讨了Fork/Join框架在并行计算中的应用,通过工作窃取策略提高程序执行效率,深入理解其核心概念与优势。
摘要由CSDN通过智能技术生成

Fork/Join

JDK1.7开始提供的在JUC包下的并行任务框架。
在多核机器上有显著的效果,主要核心工作窃取 
拥有工作窃取算法,空闲线程会帮助其他有任务的线程处理任务队列

应用概述

查询某个文件夹路径下容量最大的文件

常用方法:
1. 单线程依次遍历每层目录及文件,记录并对比文件大小
    写法简单,效率不高
2.多线程线程池遍历每层目录及文件
   线程数量,每条线程遍历的目标,需要控制,很容易出现空闲线程

这里我们就可以使用Fork/Join并行处理此任务,

将任务分成多个子任务,执行后分别返回结果,合并结果到最终返回。


package com.nf;

import java.io.File;
import java.util.concurrent.RecursiveTask;

public class ReckonTask extends RecursiveTask<File> {

	/**
	 * 
	 */
	private
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值