IntStream,什么时候才真正使用sequential()方法

IntStream, when should I really use sequential() method

当我这样做时:

IntStream i = IntStream.of(5,6,7,1,2,3,4);
//IntStream o =  i.sequential();
i.forEach(System.out::println);

无论我调用 sequential 还是 not.Then sequential() 方法的用例是什么。

假设我在多核机器上处理数百万个整数,除非我调用 sequential(),jvm 是否有可能尝试并行处理?

IntStream.of 的 javadoc 中所述,该方法 returns 是一个顺序流。所以sequential方法不会有任何效果。

在官方文档中了解有关顺序流和并行流的更多信息:https://docs.oracle.com/javase/8/docs/api/java/util/stream/package-summary.html

例如,当您有并行流时:

IntStream i = IntStream.of(5, 6, 7, 1, 2, 3, 4);
i.parallel();
i = i.sequential();
i.forEach(System.out::println);

总是 return 5, 6, 7, 1, 2, 3, 4 但是当你去掉i.sequential()时,你可以得到其他的结果,因为它是并行运行的。