【前言】
Stream().forEach 是单线程的形式进行遍历,没有充分利用现在多核Cpu的设备,这时我们就需要使用今天说到的
parallelStream。
【使用】
我们怎么使用呢?直接 parallelStream().forEach。这时就变得并行执行任务。由于并行遍历会改变执行的顺序,从而影响返回的顺序,这时我们就需要使用:parallelStream().forEachOrdered,这样就可以完全替代了。
【如何实现?】
parallelStream使用了forkjoin的线程池,可以实现创建线程,挂起线程。例如有10000个线程,需要处理,我们采用了快速排序的分治思想,
【注意事项】