简介
在 java8 中 添加了流Stream,可以让你以一种声明的方式处理数据。使用起来非常简单优雅。ParallelStream 则是一个并行执行的流,采用 ForkJoinPool 并行执行任务,提高执行速度。<br> <br> 下面我们看看2个简单的示例:
示例1 (list)
Arrays.asList(1,2,3,4,5,6)
.parallelStream()
.forEach((value) -> {
String name = Thread.currentThread().getName();
System.out.println("示例1 Thread:" + name + " value:" + value);
});
<a name="951e1e2c"></a>
示例2 (array)
Stream.of(1,2,3,4,5,6)
.parallel()
.forEach((value) -> {
String name = Thread.currentThread().getName();
System.out.println("示例2 Thread:" + name + " value:" + value);
});
问题引出
笔者最近在做一些爬虫相关的业务,其核心工具已开源 mica-http:https://gitee.com/596392912/mica/tree/maste

本文介绍了如何通过自定义ForkJoinPool提升Java8并行流ParallelStream的执行速度。作者在处理大量代理IP检测任务时,发现默认的ForkJoinPool.commonPool会导致任务堆积。通过创建自定义的ForkJoinPool,显著提高了并发流的执行效率,将原本5分钟完不成的任务缩短到2分钟内。
最低0.47元/天 解锁文章
6406

被折叠的 条评论
为什么被折叠?



