[英]Java 8 Stream multithreading
mylist.stream()
.filter(m -> m.isokay() != null)
.forEach(m -> m.dosomething()));
对于此代码,它是否在多个线程上运行? 如果没有,我该怎么办? 我希望每个m.dosomething()
在单独的线程上运行,以加快这项工作。
使用parallelStream()
来完成此任务。 请注意,文档说它“可能是并行的”,因此您可能会返回非并行流。 我想这些情况很少见,但要注意它实际上是一个限制。
mylist.parallelStream()
.filter(m -> m.isokay() != null)
.forEach(m -> m.dosomething()));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.