美文网首页
parallelStream提高效率

parallelStream提高效率

作者: 我叫罗大大 | 来源:发表于2021-09-26 15:12 被阅读0次

parallelStream默认使用了fork-join框架,其默认线程数是CPU核心数。

有两种方法来修改默认的多线程数量:

1、全局设置

在运行代码之前,加入如下代码:

System.setProperty("java.util.concurrent.ForkJoinPool.common.parallelism", "20");

2、代码块内部设置

ForkJoinPool forkJoinPool1 = new ForkJoinPool(20);
ForkJoinTask<Boolean> fs = forkJoinPool.submit(() -> inputStream.allMatch(element -> {
    Thread.sleep(300);
    System.out.println(Thread.currentThread().getName());
    System.out.println("线程数量:" + Thread.activeCount());
    return new Random().nextInt(100) >= 0;
}));
try {
    result = fs.get();
} catch (InterruptedException e) {
    e.printStackTrace();
} catch (ExecutionException e){
    e.printStackTrace();
}
forkJoinPool.shutdown();

相关文章

  • parallelStream提高效率

    parallelStream默认使用了fork-join框架,其默认线程数是CPU核心数。 有两种方法来修改默认的...

  • 自定义parallelStream的thread pool

    自定义parallelStream的thread pool 简介 之前我们讲到parallelStream的底层使...

  • parallelStream

    转自:深入浅出parallelStream 1. 什么是流? Stream是java8中新增加的一个特性,被jav...

  • java8中Collection新增方法详解

    Collection新增方法: removeIf stream parallelStream spliterato...

  • Stream

    创建Stream 从 Collection stream() parallelStream()举例: 数组 Arr...

  • Stream自动并行原理

    1.在哪里调用了ForkJoinPool? 1.1 parallelStream示例 1.2 ReduceTask...

  • ant面试

    1. java 8 parallelStream 遍历的时候 如何保证有序。 list.parallelStrea...

  • 2019-02-02——Java8 Stream

    Stream分为两种: 串行流——stream() 并行流——parallelStream() Stream的特性...

  • ParallelStream源码解读

    先看一下源码 AbstractPipeline.class 并行流处理通过调用终端 sink 的 evaluate...

  • Stream操作

    1、创建Stream流 2、stream和parallelStream的简单区别 stream是顺序流,由主线程按...

网友评论

      本文标题:parallelStream提高效率

      本文链接:https://www.haomeiwen.com/subject/mcbqnltx.html