如何强制Java 8流按顺序执行?

3
作为方法参数,我有一个流(Stream)对象。我不确定它是否并行执行。那么我该如何保证顺序执行呢?请注意,不能使用if/else/instanceof语句。谢谢!

9
你可以简单地使用 sequential() - MC Emperor
@nullpointer 在评论中给我发链接(我会看一下),我仍然可以投票关闭... - Eugene
3
以下是需要翻译的内容:https://dev59.com/2pHea4cB1Zd3GeqPnU6A如何限制流按顺序运行并防止它在并行运行?https://dev59.com/gF4b5IYBdhLWcg3wYQqZ如何确保Java8流处理的顺序?https://dev59.com/W1sV5IYBdhLWcg3w0xsK @Eugene在并行流上调用sequential()使所有之前的操作都变为顺序操作。 - Naman
1个回答

9

等一下... 只需在其上调用sequential()吗?

这只是一个标志,使sequential / parallel的最后一个调用获胜,这意味着即使您的流是parallel并且您将其作为方法参数接收,只需在终端操作之前的任何位置调用sequential就可以了。


8
这篇答案同样值得一读。 - Naman

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接