我有一个相当复杂的过程,需要几个层次的嵌套for循环。
只针对一组特定的条件执行操作。换句话说:
for(){
if(){
for(){
if(){
//Something happens RIGHT HERE
}
//And maybe here
}
}
}
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()
下面的任何内容都将以串行方式完成。我假设您正在使用类似于列表
的东西,因此您将在顶层以下创建一个与顶层没有连接的新流。
>
它们之间有什么相同和不同之处,看起来Java并行流中有RXJava中可用的一些元素,是吗?
考虑到我有2个CPU核心的事实,并行版本不是应该更快吗?有人能给我一个提示为什么并行版本比较慢吗?
我试图使用
我认为流API在这里是为了使代码更易于阅读。我觉得有点烦。流接口扩展了java。lang.AutoCloseable接口。 因此,如果你想正确地关闭流,你必须使用try-with资源。 清单1.不是很好,流没有关闭。 清单2.使用2嵌套try 清单3。当map返回流时,必须关闭stream()和map()函数。 我举的例子毫无意义。为了示例,我将jpg图像的路径替换为整数。但不要让这些细节分散你的
我有两个(或更多)