首页 > 其他 > 详细

并行集合

时间:2015-05-15 19:38:47      阅读:180      评论:0      收藏:0      [点我收藏+]

使用并行集合,能够并行的访问集合,大幅提高性能。

举例:

1 val urls = List("http://scala-lang.org",
2   "https://github.com/yankay/scala-tour")
3 
4 def fromURL(url: String) = scala.io.Source.fromURL(url)
5   .getLines().mkString("\n")
6 
7 val t = System.currentTimeMillis()
8 urls.par.map(fromURL(_))
9 println("time: " + (System.currentTimeMillis - t) + "ms")

使用方法,就只是把urls.map修改为urls.par.map。

再举之前wordCount的例子:

1 val file = List("warn 2013 msg", "warn 2012 msg",
2   "error 2013 msg", "warn 2013 msg")
3 
4 def wordcount(str: String): Int = str.split(" ").count("msg" == _)
5 
6 val num = file.par.map(wordcount).par.reduceLeft(_ + _)
7 
8 println("wordcount:" + num)

在集合之前,使用前缀par.

并行集合

原文:http://www.cnblogs.com/wlwgcdxc/p/4506389.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!