使用线程池的Java 8并行流用法

使用线程池的Java 8并行流用法

Java系列 3年前 (2021-06-29) 浏览: 453 评论: 0

执行并行流时,它在公共ForkJoinPool(ForkJoinPool.commonPool())中运行,由所有其他并行流共享。 有时我们希望在一个单独的专用线程池上并行执行代码,该线程池由特定数量的线程构成。例如,当使用myCollection.parallelStream()时,它并没有为我们提供方便的方法。 我编写了一个小的实用工具(ThreadExecutor类),可以用于此目的。 在下

Java并行流parallelStream的处理速度竟然stream慢!

Java并行流parallelStream的处理速度竟然stream慢!

Java系列 3年前 (2021-05-14) 浏览: 2502 评论: 0

奇怪的是,为什么使用“parallelStream()”的代码有时比使用“stream()”的代码慢。 实际上,使用parallelStream()有几个问题。 最重要的是,parallelStream()总是需要执行比按顺序执行更多的实际工作[即stream()]。 在多个线程之间分割工作并合并或组合结果会带来很大的开销。像将短字符串转换为小写字符串这样的用例非常小,与并行拆分开销相比,它们可以

登录

忘记密码 ?

切换登录

注册