Scala并行化集合学习笔记

调用集合的 par 方法, 会将集合转换成并行化集合

object Day03 {
  def main(args: Array[String]): Unit = {
    val list0 = List(1,2,3,4,5)
    println(list0.par.fold(0)(_ + _))//15
    println(list0.par.fold(10)(_ + _))//65
    println(list0.par.fold(10)(_ + _))//65
    println(list0.par.fold(10)(_ + _))//65
    }
}

并行化集合有几个线程就会调用多个线程执行集合,上述方法中65的结果市25+10+10+10,初始值叠加四次,因为调用四个线程所以会加4次初始值
这里的线程是根据电脑核数(小于等于)进行判断有结果线程

你可能感兴趣的:(个人练习,Scala学习)