自己创建一个网站需要多少钱,谷城网站制作,新网站如何做免费推广,郑州制作小程序公司并行流#x1f36d; 多线程并发#x1f36d; 多线程并发
#x1f355;stream与parallelStream 下面的代码分别用了parallelStream与stream进行迭代。获取对应的每一项值#xff0c;和对应的线程名称。
package top.lel.jvm.sdk.stream;import java.util.List;
import jav…
并行流 多线程并发多线程并发
stream与parallelStream 下面的代码分别用了parallelStream与stream进行迭代。获取对应的每一项值和对应的线程名称。
package top.lel.jvm.sdk.stream;import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;/*** author echo lovely* date 2022/4/30 11:29* description simple stream demo*/public class StreamDemo {public static void main(String[] args) {parallelShow();}static void parallelShow() {ListString collect Stream.of(hello, world, okay, i, am, your, dad).collect(Collectors.toList());collect.parallelStream().distinct().forEach(item - System.out.println(item \t Thread.currentThread().getName()));System.out.println();collect.stream().distinct().forEach(item - System.out.println(item \t Thread.currentThread().getName()));}}
执行结果 可以看到并行流是无序多线程的它的底层是ForkJoinPool, ——ForkJoinPool是自java7开始jvm提供的一个用于并行执行的任务框架。其主旨是将大任务分成若干小任务之后再并行对这些小任务进行计算最终汇总这些任务的结果。 并行流底层利用了线程池。在使用它时可以进行并行爬取资源加快数据的封装。对数据处理时很有帮助。
普通的流线程安全的
… 更多特性等我发掘