Stream多线程并行数据处理

TIP

起初,我写一个循环list的stram流,list.stram().filter(item->item>0).map(item->item.get(”id“)).parallel().collect(Collectors.toList)的时候,想用并行流去处理,但是不了解filter与map并行,还是filter与map内部并行。

一个顺序执行的流转变成一个并行的流只要调用 parallel()方法,一个自定义list的例子:
return Stream.iterate(1L, i -> i +1).limit(n).parallel().reduce(0L,Long::sum);

一个并发流转成顺序的流只要调用sequential()方法
stream.parallel() .filter(...) .sequential() .map(...) .parallel() .reduce();
这两个方法可以多次调用, 只有最后一个调用决定这个流是顺序的还是并发的。

本文地址 Stream多线程并行数据处理

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容