ForkJoin 在 JDK 1.7 , 并行执行任务!提高效率。大数据量!
ForkJoin 特点:工作窃取
这个里面维护的都是双端队列
以下计算1-10_0000_0000的和,for循环与ForkJoin效率差别不大,但是使用Stream并行流效果显著!!!
import java.util.*;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ForkJoinPool;
import java.util.concurrent.RecursiveTask;
import java.util.stream.LongStream;
/**
* 求和计算的任务!
* // 如何使用 forkjoin
* // 1、forkjoinPool 通过它来执行
* // 2、计算任务 forkjoinPool.execute(ForkJoinTask task)
* // 3. 计算类要继承 ForkJoinTask
*/
class test1{
public static void main(String[] args) throws ExecutionException, InterruptedException {
test1(); // 6911