我有一个相当复杂的过程,需要几个级别的嵌套for循环.
仅针对一组特定条件执行操作.换一种说法:
for(){
if(){
for(){
if(){
//Something happens RIGHT HERE
}
//And maybe here
}
}
}
没有其他语句,只有一个可靠的代码路径迭代一堆不同类型的对象.
我的问题是,如果我要用流替换这个逻辑(考虑到CPU必须执行多少次操作来完成这个循环,我认为并行流程就是这样)并且我在流中的流中有一个流(BWOOOMMMPPPPPPP INCEPTION NOISE)和我parallelstream()顶层,顶层下面的流是否仍然按顺序运行,但只是在各自的线程内?
toplevelItems.parallelstream().forEachOrdered{
//Does this stuff run in series within as many threads as there are toplevelItems
otherObjects.stream().forEach{
//or Naw?
stillOtherObjects.stream().forEach{
最佳答案 顶部parallelStream()下方的任何内容都将以串行方式完成.我假设您正在使用类似List< List<>>的内容,因此您将在顶层下创建一个与顶层没有连接的新流.